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

Вниз

Освобождать или освобождено?   Найти похожие ветки 

 
1008 ©   (2004-06-07 11:15) [0]

Хочу попользовать M$ Word в качестве генератора отчётов для чего делаю следующее:
var
WordApp:TWordApplication;
WordDoc:TWordDocument;
...
begin
try
 WordApp:=TWordApplication.Create(ReportForm);
 WordDoc:=TWordDocument.Create(ReportForm);
except
 messagebox(0,"M$ Word not found!","Error!",mb_ok);
 Close;
end;

Есть ли необходимость, в случае возникновения ошибки, осовбождать переменные WordApp и WordDoc? (WordApp.Free; WordDoc.Free;) Или же ресурсы выделенные под эти переменные будут освобождены автоматически?


 
Skier ©   (2004-06-07 11:21) [1]


> Или же ресурсы выделенные под эти переменные будут освобождены
> автоматически?

Не будут.


 
1008 ©   (2004-06-07 11:25) [2]

Skier ©  (07.06.04 11:21) [1]

То есть мне надо делать следующим образом:

except
 WordApp.Free;
 WordDoc.Free;
 ...
end;

?


 
KSergey ©   (2004-06-07 11:28) [3]

Вы создали обычный дельфийский объект.
Будьте любезны его уничтожить.

Правда, тут есть нюанс: раз указан Owner - то с разрушением формы эти объекты все же будут уничтожены. Но по хорошему - раз уж сам создал - лучше, наверное, самому и уничтожить.


 
1008 ©   (2004-06-07 11:31) [4]

Спасибо откликнувшимся.


 
KSergey ©   (2004-06-07 14:47) [5]

Да, и к стати: в [2] 1008 ©   (07.06.04 11:25) - не except.
Ведь в случае отсутствия исключений уничтожить объект все равно надо, верно? ;)



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

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

Наверх




Память: 0.48 MB
Время: 0.032 c
3-1085570999
Evyshka
2004-05-26 15:29
2004.06.20
Insufficient disk spase


14-1086268286
AlexG
2004-06-03 17:11
2004.06.20
Работа со строками в VB Excel.


14-1085775071
Yorick
2004-05-29 00:11
2004.06.20
Существует ли любовь?


6-1082204025
andrysha
2004-04-17 16:13
2004.06.20
как отправить письма через прокси UserGate


3-1085568062
DCoder
2004-05-26 14:41
2004.06.20
Какую выбрать СУБД и технологию доступа?