Вниз
Скачать: CL | DM;

Процесс, создаваемый CreateOleObject   Найти похожие ветки 

← →
Gero ©   (2005-11-22 23:39) [0]

В своей программе я вызываю CreateOleObject, при этом запускается определенный процесс, после выхода из программы созданный процесс остается висеть в памяти. Это нормально?
Процедура выхода из процесса должна обязательно должна быть реализована в COM-объекте?


← →
Lamer@fools.ua ©   (2005-11-22 23:42) [1]

>>Gero ©   (22.11.05 23:39)

Может, пока народ с духом собирается, код покажете?


← →
Gero ©   (2005-11-22 23:45) [2]


> Lamer@fools.ua ©   (22.11.05 23:42)

Пожалуйста, если это что-то даст:

OpenOfficeMgr := CreateOleObject("com.sun.star.ServiceManager");

При это запускается процесс soffice.exe.

При выходе их программы он остается.


← →
Gero ©   (2005-11-22 23:48) [3]


> Lamer@fools.ua ©   (22.11.05 23:42)

Оффтоп:

А почему ты цитаты по-старому оформляешь? Вроде как уже все браузеры поддерживаются)


← →
palva ©   (2005-11-22 23:48) [4]

Положено сообщать объекту, что в его услугах больше не нуждаются присваиванием константы Unassigned. Но если вы открыли Excel программой и поработали с ним ручками, то он все равно не закроется.


← →
Gero ©   (2005-11-22 23:51) [5]


> palva ©   (22.11.05 23:48)

Да, я делаю
OpenOfficeMgr := Unassigned;

Но процесс почему-то остается висеть.


← →
Lamer@fools.ua ©   (2005-11-22 23:52) [6]

>>Gero ©   (22.11.05 23:48) [3]

[offtopic]
Да мне всё лень Оперу 8-ю поставить (хотя и скачал уже, когда халяву открыли), а в 7-й не штрыкает...  :o)
[/offtopic]

>>Gero ©   (22.11.05 23:45) [2]

Кода — "Малофато будет! Малофато, понимаес?" ©
Какого типа переменная OpenOfficeMgr? Где объявлена? Какая область видимости? И т. п.


← →
Gero ©   (2005-11-22 23:58) [7]


> Какого типа переменная OpenOfficeMgr? Где объявлена? Какая
> область видимости? И т. п.

TForm1 = class(TForm)
public
 OpenOfficeMgr: Variant;
 procedure X;
end;

procedure TForm1.X;
begin
 OpenOfficeMgr := CreateOleObject("com.sun.star.ServiceManager");
end;


← →
Gero ©   (2005-11-23 00:00) [8]


> Gero ©   (22.11.05 23:58)

Ну и вызываю:

begin
 X;
 try
   // Делаю чего-то
 finally
   OpenOfficeMgr := Unassigned;
 end;
end;


← →
palva ©   (2005-11-23 00:20) [9]

Gero ©   (23.11.05 00:00) [8]
Все порожденные объекты также надо закрыть/уничтожить. Но все равно не всегда помогает. Я пару лет назад с экселем так боролся, так и не победил.


← →
ANB ©   (2005-11-23 00:24) [10]

У Excel есть команда выхода.


← →
Gero ©   (2005-11-23 01:31) [11]

Видимо, это нормальное явления для OpenOffice.

Всем спасибо.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.036 c
2-1133021816
0xBAD
2005-11-26 19:16
2005.12.11
DLL


2-1132587016
aglar
2005-11-21 18:30
2005.12.11
Как разрешить общий доступ к диску?


3-1130135969
vl
2005-10-24 10:39
2005.12.11
sql запрос


2-1132658021
IAMDANIL
2005-11-22 14:13
2005.12.11
REPEAT UNTIL <Завершение работы WINDOWS>


14-1132148771
Yuri Btr
2005-11-16 16:46
2005.12.11
Проблема с RadioEthernet




   Наверх