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

Вниз

Destroy в интерфейсе не вызывается?   Найти похожие ветки 

 
Cobalt ©   (2008-12-19 18:05) [0]

Сделал свой наследник  TInterfacedObject, исполняющий мой интерфейс.
У этого класса есть поле - фрейм.
Я хочу освобождать фрейм при уничтожении моего наследника, перекрыл деструктор, поставил в нем брек-пойнт, но остановки в нем не происходит.

Может кто объяснить - почему?
Ведь TInterfacedObject вызывает-таки Destroy

function TInterfacedObject._Release: Integer;
begin
 Result := InterlockedDecrement(FRefCount);
 if Result = 0 then
   Destroy;
end;


Мой класс:
 TFireFoxPlugIn = Class(TInterfacedObject, ISaverSettingsPlugIn)
  Protected
    FFrame: TfrmFireFox;
    FVersion: String;
    FHasData: Boolean;
    FCopyCash: Boolean;
  Public
   Constructor Create;
   function Present: WordBool; safecall;
   procedure SaveSettings(Directory: PWideChar; BackUp: WordBool); safecall;
   procedure LoadSettings(Directory: PWideChar; BackUp: WordBool); safecall;
   procedure GetProgramName(out ProgramName: PWideChar); safecall;
   function GetFrame(AParent: TWinControl):TFrame;
   Destructor Destroy; override;
  Published
    Property Version: string read FVersion;
    Property HasData: Boolean read FHasData;
    Property CopyCash: Boolean read FCopyCash;
 end;


Деструктор:
destructor TFireFoxPlugIn.Destroy;
begin
    FreeAndNil(FFrame);
    inherited;
end;


 
Сергей М. ©   (2008-12-19 19:50) [1]

Приведи фрагменты использования своего объекта


 
Cobalt ©   (2008-12-19 20:47) [2]

Блин, точно!
Я ж ссылки на него не обнуляю )))



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
1-1229178246
postedman
2008-12-13 17:24
2009.12.20
Объектный процедурный тип


1-1229676379
parasolka
2008-12-19 11:46
2009.12.20
Фокус в DBGrid


15-1255966439
oldman
2009-10-19 19:33
2009.12.20
Говорят, сегодня День лицеев.


1-1229474391
Jack
2008-12-17 03:39
2009.12.20
Использование TCLIENTDATASET без провайдера


3-1231686479
Чайник
2009-01-11 18:07
2009.12.20
Метод Locate - проблема с апострофом в строке поиска