Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.21;
Скачать: CL | DM;

Вниз

Работа с Excel в потоке   Найти похожие ветки 

 
Вася567   (2006-05-06 10:02) [0]

Проблема вот в чем: создаю поток.
type
 TMyThread = class(TThread)
 private
   { Private declarations }
 protected
   procedure Execute; override;
 end;

implementation

procedure TMyThread.Execute;
var
 Excel: Variant;
begin
 Excel := CreateOleObject("Excel.Application");
end;


Вот так его вызываю:
procedure TForm1.Button2Click(Sender: TObject);
var
 MyThread: TMyThread;
begin
 MyThread := TMyThread.Create(True);
 MyThread.Resume;
end;


Не работает строка Excel := CreateOleObject("Excel.Application");
Причем никаких ошибок не выдает. Просто выходит из процедуры.
Хотя безо всяких поток все отлично работает:
procedure TForm1.Button1Click(Sender: TObject);
var
 Excel: Variant;
begin
 Excel := CreateOleObject("Excel.Application");
end;


Можно ли работать с Excel"ем в потоке?


 
balepa ©   (2006-05-06 10:21) [1]

CoInitialization в ActivX
CoUnitialization после завершения работы с Excel


 
balepa ©   (2006-05-06 10:25) [2]

Поправлюся

CoInitialize;
CoUninitialize


 
Вася567   (2006-05-06 10:52) [3]

Здорово! Работает! Спасибо.
А еще я нашел теорию по этому вопросу, если кому надо
http://podgoretsky.com/ftp/Docs/Delphi/DX/COMmodel.html


 
Вася567   (2006-05-06 12:03) [4]

Рано я обрадовался.
Возникли еще две проблемы
1. В потоке не работает функция ShowMessage.
2. Если включены строки CoInitialize и CoUninitialize, то не запускаются другие медоты потока с помощью Synchronize.


 
balepa ©   (2006-05-06 12:59) [5]


> Вася567   (06.05.06 12:03) [4]
> Рано я обрадовался.
> Возникли еще две проблемы
> 1. В потоке не работает функция ShowMessage.

Пользуйся MessageBox


> 2. Если включены строки CoInitialize и CoUninitialize, то
> не запускаются другие медоты потока с помощью Synchronize.


Поясните плз. А лучше кусок кода



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

Текущий архив: 2006.05.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.058 c
15-1145868928
031178
2006-04-24 12:55
2006.05.21
Как защитить свою программу


3-1143450402
solenko
2006-03-27 13:06
2006.05.21
Получение id только что вставленной записи


15-1145736171
Хозяин
2006-04-23 00:02
2006.05.21
Иисус Христос Воскреси!


2-1146557123
49 Cent
2006-05-02 12:05
2006.05.21
Можно ли изменить угол для Timage?


2-1146036331
valdemot
2006-04-26 11:25
2006.05.21
компилятор