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

Вниз

как проверить создан ли TFileStream;   Найти похожие ветки 

 
bbk   (2008-11-21 01:27) [0]

var
  tmpStream : TFileStream;
begin

  tmpStream := TFileStream.Create("d:\1.dat", fmCreate);
  tmpStream.free;

...
 if Assigned(tmpStream) then tmpStream.free; // Вылетает except ошибка
end;  

В чем и вопрос, как правильно проверить, так как после free метода файлового потока Assigned(tmpStream) возвращает все равно истину.


 
{RASkov} ©   (2008-11-21 01:29) [1]

> [0] bbk   (21.11.08 01:27)

После Free пременную сбрось в нил...


 
bbk   (2008-11-21 01:32) [2]

что ещё не понятно, после

   tmpStream.free;
   ShowMessage(IntToStr(tmpStream.Handle));

хендл все равно остается.
с destroy такая же хрень.
как блин его удалить? (:


 
{RASkov} ©   (2008-11-21 01:33) [3]

> После Free пременную сбрось в нил...

:) или в любую близлежащую реку...) т.е.:
tmpStream.free;
tmpStream:=nil;
.....
if Assigned(tmpStream) then

See also: FreeAndNil()


 
bbk   (2008-11-21 01:33) [4]

{RASkov} спасибо, что-то не допер был.
интересно девки пляшут...


 
{RASkov} ©   (2008-11-21 01:34) [5]

> хендл все равно остается.

"битый"


 
bbk   (2008-11-21 01:37) [6]

а вообще если у меня есть процедурка нужно в конце всегда обнулять созданный объект или free будет достаточно?


 
Германн ©   (2008-11-21 02:01) [7]


> bbk   (21.11.08 01:37) [6]
>
> а вообще если у меня есть процедурка нужно в конце всегда
> обнулять созданный объект или free будет достаточно?
>

Как правило достаточно. Всё остальное "от лукаваго"! :)


 
Anatoly Podgoretsky ©   (2008-11-21 08:56) [8]

> bbk  (21.11.2008 1:27:00)  [0]

Очень просто, ничего проверять не надо, не засоряй себе мозги.


 
Правильный$Вася   (2008-11-21 12:26) [9]


> а вообще если у меня есть процедурка нужно в конце всегда
> обнулять созданный объект или free будет достаточно?

по выходе из процедурки у тебя эти переменные уже недоступны


 
{RASkov} ©   (2008-11-21 12:48) [10]

> [9] Правильный$Вася   (21.11.08 12:26)

Но память-то нужно отдать :) Поэтому [7]...


 
Правильный$Вася   (2008-11-21 13:01) [11]


> Но память-то нужно отдать

естественно


 
{RASkov} ©   (2008-11-21 13:04) [12]

> [11] Правильный$Вася   (21.11.08 13:01)

сорри... я не верно понял [9](



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

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

Наверх




Память: 0.49 MB
Время: 0.013 c
15-1225961941
axd
2008-11-06 11:59
2009.01.04
Хот кейс


15-1225862632
Slider007
2008-11-05 08:23
2009.01.04
С днем рождения ! 2 ноября 2008 воскресенье


2-1227220027
bbk
2008-11-21 01:27
2009.01.04
как проверить создан ли TFileStream;


15-1225530153
maks_
2008-11-01 12:02
2009.01.04
Помогите в оценке программы


15-1225807517
Petr V. Abramov
2008-11-04 17:05
2009.01.04
Электронные деньги - будущая замена бумажных денег?