Autor Beitrag
woully
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 78



BeitragVerfasst: Di 30.06.09 16:13 
Hi,

ich hätte da mal ein problem..
Ich habe eine Software die einen dienst installiert und startet.
In der Taskbar will ich ein Tryicon anzeigen das mir ermöglicht diesen Dienst zu stoppen, erneut zu starten, etc.

Das Icon wird auch angezeigt. Sobald ich mit der Maus darauf zeige, verschwindet das Icon.
Ich habe schon heraus gefunden das es am WND von der TnotifyIcondata Struktur liegt.

Da ich keine Form habe, übergebe ich als Handle eine 0, und da liegt das Problem
Mit einem Handle <>0 funktionniert es.

Weiß jemand wie ich dieses entwicklen kann.
(Eine form unsichtbar machen um ein Handle zu bekommen finde ich nit so toll... )

Danke
Boldar
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1555
Erhaltene Danke: 70

Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
BeitragVerfasst: Di 30.06.09 16:17 
Kann man das Handle vom Desktop übergeben? Probier das doch mal aus.
mfg Boldar
woully Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 78



BeitragVerfasst: Di 30.06.09 17:11 
Hi,

danke für die schnelle Antwort.
Ich habe auch die Lösung inzwischen auf einem anderem Forum gefunden.
Laut Herr Kosch, kann ein Dienst kein Trayicon verwalten.

in diesem Fall ist es üblich, dass für die Darstellung in der TBNA eine zweite Anwendung verwendet wird, die mit dem (unsichtbaren) Dienst kommuniziert. Für das einfache Starten/Anhalten/Fortsetzen/Beenden ist kein direkter Zugriff auf den Dienst notwendig, sondern das TBNA-Programm ruft nur die Funktionen des SCM (Service Control Managers) von Win32 auf.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 30.06.09 17:14 
Ein icon in der TNA benötigt eine Nachrichtenschleife, um die Nachrichten verarbeiten zu können. Dies geht am einfachsten mit einem normalen Fenster. Dies kann aber auch unsichtbar sein.