У меня есть приложение D2006, которое уведомляет о различных событиях с помощью подсказки в трее. Время от времени, но не очень часто - скажем, 1 из 10 вызовов приложения - один из советов решает, что оно будет появляться снова и снова ... навсегда. Единственное, что его останавливает, - это закрыть приложение.
Если приложение выдает другое всплывающее окно int, оно заменяет подсказку-фантом, но затем после истечения срока действия новой подсказки подсказка-фантом возвращается. Аналогично, если я закрою фантомную подсказку, она немедленно вернется.
Я убедился, что код для создания подсказки не вызывается повторно. Намек возникает где-то глубже в недрах.
MainForm.TrayIcon1.BalloonFlags := Flag ;
MainForm.TrayIcon1.BalloonTitle := Title ;
MainForm.TrayIcon1.BalloonHint := Message ;
MainForm.TrayIcon1.BalloonTimeout := Delayms ;
MainForm.TrayIcon1.ShowBalloonHint ;