Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Потоки и COM [D5, Win95/98, Win2k]


BJValentine ©   (2002-03-12 17:03:00) 

Ребята, может кто знает, как нужно в отдельном потоке работать с COM объектами? Я хочу данные перегнать в Excel в потоке, но мне выходит месаг типа: не выполнен метод CoInitialize. Что мне нужно сделать, может у кого исходник есть? Спасибо.


kull   (2002-03-13 01:43:00) [1]

CoInitialize(nil);
try
.........
finally
CoUninitialize;
end;


BJValentine   (2002-03-12 17:23:00) [2]

Спасибо, получилось !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Romkin   (2002-03-12 17:21:00) [3]

А в конце не забыть вызвать coUninitialize, это просто инициализация COM. Подробнее:
http://www.techvanguards.com/com/tutorials/tips.asp#Initializethreads that interact with COM


Delirium   (2002-03-12 17:11:00) [4]


uses ActiveX;
...
ActiveX.CoInitialize(nil);
...


BJValentine   (2002-03-12 17:09:00) [5]

Для своих коварных планов я использую модуль ComObj. А как в нём правильно вызвать этот метод? Чего он делает? Когда его надо вызывать?


Владислав   (2002-03-12 17:08:00) [6]

Для каждого потока необходимо вызывать CoInitialize! Читай выше.


Delirium   (2002-03-12 17:06:00) [7]

Ну и вызови CoInitialise, в модуле ActiveX


Наверх

Титульная страница Поиск, карта сайта Написать письмо