RegisterExpectedMemoryLeak
プロシージャにインターフェイスを登録することは可能ですか?
次のように宣言されたプライベートフィールドがあります。
FDragDropTarget: IDropTarget;
次に、このインスタンスを作成し、このオブジェクトの既知のメモリ リークを登録しようとします。
FDragDropTarget := TDropTarget.Create(lcMain.Handle, FDragDrop);
RegisterExpectedMemoryLeak(FDragDropTarget);
ただし、互換性のない型 'Pointer' と 'IDropTarget' があることを示すコンパイラ エラーが発生します。私にとって、私のインターフェースインスタンスはとにかくポインターですか?
それで、私はこれを行うことができますか?.dpr ファイルにある ReportMemoryLeaksOnShutdown := True ステートメントを介して報告されています。
begin
ReportMemoryLeaksOnShutdown := True;
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm2, Form2);
Application.Run;
end.
TDropTarget は、IDropTarget インターフェイスの私の実装です。
TDropTarget = class(TInterfacedObject, IDropTarget)
...
end;
ありがとう