![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
СoInitialize - как вызывать!? [D6, WinXP]
Uran © (2002-08-08 16:41:00)Мастера , подскажите как избавиться от такой ошибки .....
ПРи попытке создания в отдельном потоке COM обьекта выдается сообщение об ошибке " Не был произведен вызов CoInitialize" ...
Что это ща функция (процедура) как её правильно вызвать и для чего она нужна!?
Заранее благодарен!
McSimm (2002-08-08 17:02:00) [1]
> а оно всё равно ругается
Uses ActiveX.
Внимательнее.
Uran (2002-08-08 17:00:00) [2]Ан нетвсё работает!!! :))))) Про ActiveX ешще не поступило сообщение! :)) Пасиба большое!! Ех с удоволствием бы пивом проставился если б было возможно в реале! :)))))))
McSimm (2002-08-08 16:59:00) [3]
> kull © (08.08.02 16:51)
Согласен, надо именно так
Uran (2002-08-08 16:57:00) [4]Сделал как вы советовали, а оно всё равно ругается "Undeclared identifier CoInitialez" :(( ... Где может быть моя ошибка !?
BJValentine (2002-08-08 16:55:00) [5]Да, и не забудь в uses описать модуль ActiveX
McSimm (2002-08-08 16:55:00) [6]
> Что это за функция (процедура)
Инициализирует Component Object Model(COM) library.
CoUninitialize закрывает ее и освобождает ресурсы
Описаны в модуле ActiveX
kull (2002-08-08 16:51:00) [7]
> CoInitialize(nil);
> в конце
> CoUnInitializeж
Я бы сказал что правильней так
CoInitialize(nil);
try
...
finally
CoUnInitialize
end;
McSimm (2002-08-08 16:48:00) [8]Для каждого потока работающего с COM надо вызвать
CoInitialize - CoUnInitialize
> как её правильно вызвать
Например в начале Tread.Execute
CoInitialize(nil);
в конце
CoUnInitializeж