Главная страница
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.47 MB
Время: 0.023 c
1-1086593564
ancara
2004-06-07 11:32
2004.06.20
Как в ресурсы поместить цветную иконку?


1-1086323999
ashnurov
2004-06-04 08:39
2004.06.20
Timer


3-1085637223
r9000
2004-05-27 09:53
2004.06.20
При использовании компонента ADO возникает ошибка


14-1086159266
ORMADA
2004-06-02 10:54
2004.06.20
TSynEdit


1-1086696134
Ale
2004-06-08 16:02
2004.06.20
Cursor (mouse)