Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];

Вниз

Работа с 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.013 c
8-1135447050
Nigel
2005-12-24 20:57
2006.05.21
System volume


15-1145902347
Grando_Lamer
2006-04-24 22:12
2006.05.21
Портирование на мобильники


15-1145780258
Spirit of RO
2006-04-23 12:17
2006.05.21
Random сообщение


2-1146553906
MST
2006-05-02 11:11
2006.05.21
Переменная сквозь модальные окна


15-1145880316
Spirit of RO
2006-04-24 16:05
2006.05.21
Могут взять несовершеннолетнего на работу? (16 лет)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский