Здравствуйте, 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 (выключи асинхронную загрузку). На эти грабли часто становятся.