Einzelnen Beitrag anzeigen

helen

Registriert seit: 8. Mai 2004
42 Beiträge
 
#1

function aufrufen von der nur das Handle bekannt ist

  Alt 5. Sep 2004, 16:23
Hallo,

eine Anwendung will ihr Icon in den Systray stecken. Hierbei übermittelt es die Daten mit folgendem Code:

Code:
    procedure OnMessage(var Msg: TMessage); virtual;

    ...

    FillChar(fData, SizeOf(fData), 0);
    fData.cbSize := SizeOf(fData);


    fData.Wnd := AllocateHwnd(OnMessage); // handle to get notification message
    fData.uCallbackMessage := WM_CALLBACK_MESSAGE;

    fData.hIcon := Icon.Handle; // icon to display
    StrPLCopy(fData.szTip, Application.Title, SizeOf(fData.szTip) - 1);
    fData.uFlags := Nif_Icon or Nif_Message;
    if Application.Title <> '' then
      fData.uFlags := fData.uFlags or Nif_Tip;

    if not Shell_NotifyIcon(NIM_ADD, @fData) then // add it
      raise EOutOfResources.Create('Cannot create shell notification icon');
Der komplette Codee steht unter http://www.swissdelphicenter.ch/de/showcode.php?id=1303

Wie kann ich nun von meiner Anwendung aus, in der ich nur die beiden Daten fData.Wnd := AllocateHwnd(OnMessage); fData.uCallbackMessage := WM_CALLBACK_MESSAGE; auf die Funktion zugreifen, die mir in fData.Wnd übergeben wurde, um diese auszuführen?

Gruß Helen
  Mit Zitat antworten Zitat