Windows 10中的内存泄漏Delphi Seattle中的TNotification?

时间:2016-03-30 13:41:42

标签: delphi notifications windows-10 delphi-10-seattle

我在我的应用程序中实现了Windows 10通知。但是,下面的代码(运行正常)显然会给出1个TNotification对象和2个字符串的备忘录泄漏,但我在块的末尾释放了该对象:

aNotification := NotificationCenter.CreateNotification;

//-- If not assigned then must be Win 8.1 or below
if not assigned(aNotification) then
  exit;

try
  aNotification.Title := AlignMixVersionName + ' License';
  aNotification.AlertBody := aText;

  NotificationCenter.PresentNotification(aNotification);

finally
  aNotification.Free;
end;

我是在做一些愚蠢的事情,还是在通知的实施中存在内存泄漏?

  • 史蒂夫

1 个答案:

答案 0 :(得分:8)

确实是由TNotificationCenterDelegateActivated引起的泄漏。在Create中创建了TNotification参数的副本,但从未释放过。

似乎一些负责此代码的开发人员并不熟悉非ARC环境。