Re[3]: Builder, CoUninitialize и IXMLDocument в отдельном по
От: Danchik Украина  
Дата: 08.04.05 13:11
Оценка:
Здравствуйте, SterhBy, Вы писали:

SB>Спасибо за совет.

SB>Я не хотел так делать, чтобы не создавать экземпляр этого класса динамически в потоке. Это не слишком экономно для такой задачи.
Да тебе и не надо этого делать Просто что бы создать свой класс CoiInitialize уже должно быть вызвано! Для главного потока сделай это в DPR (ищи CBuilder аналог)


program SomeProgram;
uses
  ActiveX;
begin
  CoInitilize (nil);
  try 
    Application.Initialize;
    Application.CreateForm (TForm1, Form1);
    Application.Run;
  finally
    CoUninitialize;
  end;
end;


SB>Но я попробовал. Такой ошибки уже нет, зато вся программа работает нестабильно. Через пару десятков запусков потока программа слетает .

А теперь делай так. Ты используеш MSXML. Вызови сразу в конструкторе x->asynch = false (выключи асинхронную загрузку). На эти грабли часто становятся.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.