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

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

Запуск Excel из дополнительного потока [D7, XP]


Антоныч ©   (2006-05-26 14:17:00) 

Почему не запускается Excel из созданного потока?
procedure TPotok.Execute;
var
 XLApp, WorkBk, WorkSheet: Variant;
begin
  XLApp := CreateOLEObject('Excel.Application');
 WorkBk:=XLApp.WorkBooks.Open('D:\sp_module.xls');
 WorkSheet:=WorkBk.Sheets.Item[1];
 XLApp.Visible:=True;
end;
Выполнение прекращается на выделенной строке, выдаётся ошибка "Не был произведён вызов CoInitialize". Это куда копать и с чем есть? :-)


Антоныч   (2006-05-26 14:31:00) [1]

В принципе, уже спросил у Яндекса, спасибо :-)


Антоныч   (2006-05-26 14:29:00) [2]

Хмм, интересно... тогда сразу 2 вопроса:
1) Почему из основного потока всё работает и без CoInitialize?
2) В каком модуле объявлен CoInitialize или хотя бы в какой виндошной dll-ке он сидит?

2 Kolan: Работаю на китайцев, там над этим голову не ломают :-)


Kolan   (2006-05-26 14:27:00) [3]

Просто глаза резануло:
TPotok- представь сколько будет ломать голову англичанин над этим именем.


Сергей М.   (2006-05-26 14:18:00) [4]

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


Наверх

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