Einzelnen Beitrag anzeigen

Benutzerbild von ManuMF
ManuMF

Registriert seit: 11. Jul 2005
1.016 Beiträge
 
Delphi 6 Personal
 
#1

Probleme mit der Änderung des TNA-Icons

  Alt 14. Jul 2005, 14:57
Hallo,

ich habe ein Problem, wenn mein Programm das TNA-Icon ändern soll: Es erscheint die Meldung "[X] Zugriffsverletzung bei Adresse..."

Der Code (gekürzt auf die wesentlichen Teile):
Delphi-Quellcode:

var IASymbol : TIcon; // Global, da das in mehreren Prozeduren benötigt wird

procedure TaskBarAktualisieren;
  var tnid: TNotifyIconData;
begin
  with tnid do begin
    cbSize := SizeOf(TNotifyIconData);
    Wnd := PWRT_ClientForm.Handle;
    uID := 1;
    uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
    uCallbackMessage := WM_TASKBAREVENT;
    if (ServerAktiv) then
      hIcon := Application.Icon.Handle // Hier wird geprüft, ob das Standard-Icon (kein Problem)...
    else
      hIcon := IASymbol.Handle; // ...oder das 2. Icon verwendet werden soll (Fehlermeldung)
  end;
  StrCopy(tnid.szTip, PChar(ClientCaption)); // ClientCaption => Die QuickInfo
  Shell_NotifyIcon(NIM_MODIFY, @tnid);
end;

procedure TPWRT_ClientForm.FormCreate(Sender: TObject);
begin
  IconListe.GetIcon(0, IASymbol); // Das Icon stammt aus einer ImageList
end;
(Es handelt sich um einen Client, auf dem eine Server-Komponente läuft, also nicht von den Namen verwirren lassen )

Danke,
Manu
  Mit Zitat antworten Zitat