AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tasks im Systray

Ein Thema von MatthiasW · begonnen am 15. Feb 2005 · letzter Beitrag vom 17. Feb 2005
Antwort Antwort
Seite 2 von 2     12   
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#11

Re: Tasks im Systray

  Alt 16. Feb 2005, 09:30
vielleicht habe ich mich etwas unglücklich ausgedrückt. Aber für jeden laufenden Task lassen sich ja "Eigenschaften" festlegen z.B. minimiert, maximiert, Symbol, Visible/Hide. Jetzt kann ich ja die Tasks nach diesen Eigenschaften filtern. Ich hatte gehofft das das auf die gleiche weiße mit den Tasks im Tray geht.
Hilfe wir stürzen ab!!!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#12

Re: Tasks im Systray

  Alt 16. Feb 2005, 09:54
Fangen wir mal von vorne an:

Ein Prozess ist nur ein Container, der den Adressraum bereitstellt und organisiert. Ein Prozess führt keinen Code aus. Code ausführen tuen Threads. Threads sind Objekte innerhalb eines Prozesses und nutzen den vom ihm bereitgestellen Adressraum. Eine Windows GUI Anwendung hat immer mindestens einen Thread, den Hauptthreade, der direkt vom Prozess erzeugt wird. Dieser Hauptthread erzeugt das Fenster und kann, so es der Programmierer denn will, weitere Threads abspalten. Wird das zum Haupttheread gehörige Fenster geschlossen, wird auch der Hauptthread beendet. Ist es der einzige Thread im Prozess, wird selbiger vom System beendet, aus dem System entfernt, alle Ressourcen (geöffnete Dateien usw.) dieses Prozesse werden wieder freigegeben und der Adressraum wieder freigegeben; da ein Prozess ohne Thread und somit ohne auszuführenden Code, logischerweise seine Daseinsberechtigung verliert.

Zur TNA. Die TNA, der Bereich neben der Uhr, in der sich die Icons der Anwendungen befinden, ist eigentlich nichts anderes als eine Toolbar und die Icons sind nur Schaltflächen auf dieser Toolbar. Äußert nun eine Anwendung den Wunsch, dort ein Icon ablegen zu dürfen, erzeugt der Explorer eine neu Schaltfläche und ordnet sie der Anwendung zu. Wird jetzt auf das Symbol geklickt, wird die dazugehörige Anwendung benachrichtigt und diese kann dann darauf mit einer Aktion reagieren. "Minimiert" sich nun eine anwendung in die TNA, wird entweder nur das Fenster versteckt oder zerstört und eben bei Bedarf wieder erzeugt oder angezeit, je nach Lust und Laune des Programierers.

So, was willlst du nun wie Filtern?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#13

Re: Tasks im Systray

  Alt 16. Feb 2005, 15:22
ich sehe schon mit meinem Filtern komme ich nicht weiter. Tja kurz gesagt: ohne laufenden Explorer siehts da wohl schlecht aus. Da müsste ich dann wohl eine Application haben die als erstes gestartet wird und loggt wer ein

Shell_NotifyIcon(NIM_ADD, @IconData); aufruft und das Handle des Prozesses dann abspeichern.
Hilfe wir stürzen ab!!!
  Mit Zitat antworten Zitat
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#14

Re: Tasks im Systray

  Alt 17. Feb 2005, 11:02
Ich habe mir nochmal die unit von toms angeschaut: da wird eine Funktion "GetIcon" aus der DLL "InterprocessImageList.DLL" verwendet um das Icon anhand der Bitmap ID zu ermitteln. Kann mir jemand sagen welche funktion in der DLL dahinter steckt um an das Icon zu gelangen?
Hilfe wir stürzen ab!!!
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#15

Re: Tasks im Systray

  Alt 17. Feb 2005, 12:25
Zitat von MatthiasW:
Ich habe mir nochmal die unit von toms angeschaut: da wird eine Funktion "GetIcon" aus der DLL "InterprocessImageList.DLL" verwendet um das Icon anhand der Bitmap ID zu ermitteln. Kann mir jemand sagen welche funktion in der DLL dahinter steckt um an das Icon zu gelangen?
InterprocessImageList.DLL ist in C++ geschrieben.
Die Sourcen findest du im Anhang.

Vielleicht hat ja jemand Lust, die Sourcen nach Delphi zu übersetzen
Angehängte Dateien
Dateityp: zip interprozess_212.zip (9,8 KB, 17x aufgerufen)
Thomas
  Mit Zitat antworten Zitat
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#16

Re: Tasks im Systray

  Alt 17. Feb 2005, 12:39
Danke für die Info's. Werds mir mal anschauen. Aber mit dem Umsetzen nach Delphi, mal sehen.

Mfg Matthias
Hilfe wir stürzen ab!!!
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#17

Re: Tasks im Systray

  Alt 17. Feb 2005, 12:44
Aber es ist doch gar nicht notwendig, wenn die dll in C++ geschrieben ist...
Kommt doch auf das gleiche heraus (hat vielleicht sogar einen Vorteil: die C++ Dll ist evtl. kleiner)
Thomas
  Mit Zitat antworten Zitat
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#18

Re: Tasks im Systray

  Alt 17. Feb 2005, 14:16
Hilfe wir stürzen ab!!!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz