我從來沒有注意到它在我的程序中,但對於我的TForm之一,我有一個銷燬事件,釋放一個對象,被多次調用或觸發。我不明白爲什麼。爲什麼形式摧毀事件被稱爲不止一次?
procedure THTrendFrm.FormDestroy(Sender: TObject);
begin
LogAlarm.Free; <---Invalid Pointer Operation exception is raised
end;
由於提前,
更新:這是之後我的計劃是關閉FastMM消息窗口。 012larm.sh是創建LogAlarm的類。
您是否嘗試過我的建議?在Application.Run之後,從.dpr文件的表單對象中調用Free。 – 2012-04-13 06:43:52
@DavidHeffernan我確實應用了你的建議,FastMM仍然發現了錯誤。 – ThN 2012-04-13 13:23:24
我只是想出了我的問題。我剛剛在項目dpr文件中看到了兩次Application.CreateForm(THTrendFrm,HTrend)。我刪除了重複,它工作正常。 – ThN 2012-04-13 13:38:24