Вниз
Скачать: CL | DM;

OLE и потоки   Найти похожие ветки 

 
td   (2004-10-27 20:36) [0]

делаю так
в форме на создание подключаю ворд (97/2000)
(MsWord := GetActiveOleObject("Word.Basic");),
открываю документ + есть отдельная функция TForm1.procedure1 в которой всего одна строчка
MsWord.Insert("1");

если я вызов этой функции добавляю в onCreate, то, конечно, работает все нормально. Но мне надо, чтобы данные выводились в цикле, в таблицу, просто сейчас упрощенный пример, в котором возникает та же самая ошибка.

Поэтому на форме есть кнопка прервать, а данные выводятся почти бесконечно долго. Создаю поток, в котором пишу
While not terminated do
procedure1;

когда дело доходит до этой функции получаю ошибку OleSysEror "Не был произведен вызов Colnitialize".

Что делать?
Спасибо


 
GanibalLector ©   (2004-10-27 20:50) [1]

> "Не был произведен вызов Colnitialize"
Дык сделать  CoInitialize и намана


 
GanibalLector ©   (2004-10-27 20:53) [2]

begin
CoInitialize(nil);
... // код
CoUninitialize;
end


 
Гаврила ©   (2004-10-27 20:56) [3]

Colnitialize должен быть вызван для каждого потока, использующего COM
для главного потока программы это сделали за Вас, для дополнительного - руками


 
td   (2004-10-27 21:05) [4]

ой
спасибо!


 
td   (2004-10-28 23:42) [5]

а-аа!!
У меня еще вопрос - че надо подключить в юзез, чтобы это заработало?


 
GanibalLector ©   (2004-10-28 23:50) [6]

uses ActiveX;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
4-1096874938
onyx
2004-10-04 11:28
2004.11.14
Прозрачное окно в Win 9x


4-1096918358
X-RayMan
2004-10-04 23:32
2004.11.14
Точность...


14-1098558826
CPUz80
2004-10-23 23:13
2004.11.14
Работа процессов в WIN32.


1-1099320116
hgd
2004-11-01 17:41
2004.11.14
Подскажите как быть


6-1094543934
acidman
2004-09-07 11:58
2004.11.14
NetShareAdd под Delphi




   Наверх