Entwickler-Ecke

Windows API - Sendmessage an ein unsichtbares Fenster


woully - Fr 25.09.09 11:41
Titel: Sendmessage an ein unsichtbares Fenster
Hi,

folgendes Problem :

Ich habe eine Applikation die unsichtbar ist (Application.ShowMainForm := False), und nur ein Trayicon in der Taskbar hat.

ein Zweites Programm sendet eine WM_USER Botschaft mit sendmessage :

Delphi-Quelltext
1:
2:
3:
  updHandle := FindWindow(PChar('TM_UPDATECENTER'),nil);
  if updHandle <> 0 then
    SendMessage(updHandle,WM_USERUPDINSTALL,0,0);

updHandle ist ungleich 0, also Fenster wird gefunden, und Botschaft wird versendet.

Leider kommt die nie in meinem unsichtbarem Programm an.

Zuerst hatte ich die

Delphi-Quelltext
1:
Procedure WM_USERUPDINSTALL(var msg : TMessage);message WM_USERUPDINSTALL;                    
in meine Klasse eingefügt, danach habe ich es über

Delphi-Quelltext
1:
Application.OnMessage := ApplicationMessage;                    
versucht.

Beider Lösungen waren nicht erfolgreich.
hat jemand nä idee ?

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt


Tryer - Fr 25.09.09 14:21

Geht es mit PostMessage() ?
Da Du keine Daten übermittelst sehe ich keinen Grund für SendMessage.

Grüsse, Dirk


jaenicke - Fr 25.09.09 15:41

user profile iconwoully hat folgendes geschrieben Zum zitierten Posting springen:
updHandle ist ungleich 0, also Fenster wird gefunden, und Botschaft wird versendet.
Stimmt denn das Handle? Funktioniert es denn, wenn das Fenster sichtbar ist?