Главная страница
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.036 c
14-1086092997
Vit@ly
2004-06-01 16:29
2004.06.20
Задака - подкинул на mcsa в курилку, до сих пор решают


1-1086192848
Damager
2004-06-02 20:14
2004.06.20
Как переименовать папку


1-1086761992
artem_123
2004-06-09 10:19
2004.06.20
вопрос по mainmenu


3-1085557555
Stanislav
2004-05-26 11:45
2004.06.20
Dbgrid to Dbgrid


1-1086457803
DJ DIZzY
2004-06-05 21:50
2004.06.20
StringGrid