Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Programm im Systray


4 replies to this topic

Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 02 June 2006 - 15:01

Hallo!
Bei meiner Installation wird ein Programm im Systray gestartet. Bei der Deinstalltion möchte ich das gerne wieder beenden. Das klappt z.B. via WMI, doch das gefällt mir nicht weil das Programm dort nur "terminiert wird". Gibt es eine Möglichkeit das Programm ordentlich zu beenden?

Danke
Sascha

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 02 June 2006 - 16:34

Ich glaube du musst der Aplication einen Windows Message schicken, WM_CLOSE oder so.

Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 03 June 2006 - 10:42

Ja, das habe ich versucht. Jedoch benötigt die API-Funktion SendMessage ein Fensterhandle:
CODE

LRESULT SendMessage(      

   HWND hWnd,
   UINT Msg,
   WPARAM wParam,
   LPARAM lParam
);


Da die Anwendung im Systray ist und kein Fenster hat, habe ich Schwierigkeiten das Handle zu ermitteln. Wäre super, wenn Du mir da helfen könntest.
Danke
Sascha

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 06 June 2006 - 07:58

Tut mir leid, da kann ich dir nicht helfen, ist ja auch eigentlich kein Setup-Problem. Aber du bist sicher nicht der erste, also probier doch mal die Suchmaschine deines Vertrauens smile.gif

Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 06 June 2006 - 08:59

Ich habs jetzt geschafft, das Programm sauber zu beenden.
Dazu habe ich mit PostMessage einen Broadcast an alle Anwendungen geschickt. Die Message vorher im Setup und dem zu schliessendem Programm mit RegisterWindowMessage registriert, damit ich eine eindeutige ID erhalte. Diese ID dann im Messageloop des betreffenden Programms abgefangen und falls Sie auftaucht, beenden sich das Programm.
Funktioniert ganz gut, aber vielleicht hat da jemand einen besseren Einfall.

Sascha