mein kleines Prog läuft ohne GUI im Hintergrund.
Ich wollte dem jetzt ein Icon verpassen und dieses im Systray anzeigen.
Das Icon habe ich eingebunden via .rc Datei. 32x32. Alles OK. Bei der .exe wird's auch angezeigt.
Nur scheitert die AddSysTrayIcon Funktion.
Hier bin ich immer wieder auf den Code-Auszug von ts-soft gestoßen:
Code: Alles auswählen
TrayIcon.l = LoadIcon_(GetModuleHandle_(0), 1)
AddSysTrayIcon(1, WindowID(0), TrayIcon)
Den Hinweis, dass es erst nach kompilieren klappt, habe ich gelesen.
Auch den Code in diesem Beitrag vom mk-soft habe ich probiert.
Icon via .rc eingebunden. Verschiedene Icons probiert. Alles OK!
Es wird aber immer nur das Standard Icon #IDI_APPLICATION im Systray angezeigt, also folgende Bedingung ausgeführt:
Code: Alles auswählen
If hIcon = 0
hIcon = LoadIcon_(0, #IDI_APPLICATION)
EndIf
AddSysTrayIcon(0, WindowID(0), hIcon)
So funktioierts natürlich. Dann wäre es in der .exe aber doppelt drin.
Code: Alles auswählen
DataSection
ICON: IncludeBinary "test.ico"
EndDataSection
ci = CatchImage(1, ?ICON)
OpenWindow(0,0,0,0,0,"",#WS_VISIBLE)
AddSysTrayIcon(5, WindowID(0), ci)
Vielen Dank und Gruß
stab