Delphi-PRAXiS
Seite 1 von 2  1 2   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   MyTaskManager v0.3.2.1 (https://www.delphipraxis.net/85134-mytaskmanager-v0-3-2-1-a.html)

Darkmorph 26. Jan 2007 12:44


MyTaskManager v0.3.2.1
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
hier mein erstes Programm, dass ich veröffentliche. Es ist ein Ersatz für die Prozesssparte vom Task-manager. Es zeigt standardmäßig alle Prozesse an, die arbeiten, also CPUTime nutzen. Man kann über eine Checkbox jedoch alle Prozesse anzeigen lassen. Man kann auch einen Prozess markieren und diesen durch Klick auf den Kill-Button killen. Die Refreshrate läßt sich über eine Trackbar einstellen, von 250ms-1500ms. Das Programm wird nur in der TaskBar-Notification-Area angezeigt, ein rechts oder linksklick auf dem Symbol bewirkt, das es angezeigt oder versteckt wird. Dieses Programm schreibt nichts in die Registry und hinterläßt auch keine Dateien auf dem PC.

Ich freue mich auf konstruktive Kritik und Verbesserungsvorschläge!

TODO:
aus einem mir noch! unbekannten Grund wird bei einigen Systemprozessen der Memory-Usage nicht richtig angezeigt, bin aber an der Beseitigung des Fehlers.

Müßte unter allen Windows-Versionen lauffähig sein, getestet habe ich es aber nur unter Windows XP (Professional).


MfG
Benjamin

Matze 26. Jan 2007 12:57

Re: MyTaskManager v0.3.2.1
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

irgendwie stimmt was nicht ganz. Dein Programm zeigt einen Prozess zu wenig an und die CPU-Auslastung ist auch nicht ganz korrekt (sofern der TaskManager und der Process Explorer das korrekt anzeigen). Die RAM-Anzeige passt auch nicht. :gruebel:

Wie kann man dein Programm wiederherstellen, wenn es minimiert ist? Ich habe kein Kontextmenü und ein Doppelklick aufs TNA-Icon ist auch nutzlos. Schön wäre die Anzeige der CPU/RAM-Auslastung in der TNA.

Im Anhang mal ein Screenshot, da siehst du, dass manches nicht so passt.

Darkmorph 26. Jan 2007 13:36

Re: MyTaskManager v0.3.2.1
 
Zitat:

Zitat von Matze
Hi,

irgendwie stimmt was nicht ganz. Dein Programm zeigt einen Prozess zu wenig an und die CPU-Auslastung ist auch nicht ganz korrekt (sofern der TaskManager und der Process Explorer das korrekt anzeigen). Die RAM-Anzeige passt auch nicht. :gruebel:

Wie kann man dein Programm wiederherstellen, wenn es minimiert ist? Ich habe kein Kontextmenü und ein Doppelklick aufs TNA-Icon ist auch nutzlos. Schön wäre die Anzeige der CPU/RAM-Auslastung in der TNA.

Im Anhang mal ein Screenshot, da siehst du, dass manches nicht so passt.


Also die Prozessanzahl wird jetzt richtig angezeigt, hatte damit zu tun, das mein Programm den System-Idle-Prozess nicht berücksichtigt, da mein Programm den selbst errechnet.
Zu den Unkorrektheiten bei der Anzeige der CPU-Auslastung der einzelnen Tasks kann ich nur sagen, das ich nicht 100%ig sagen kann woran das liegt, weil mir der Source-Code von dem Process-Explorer nicht vorliegt. Eine Möglichkeit ist, das die unterschiedliche Refreshrate ihren Teil dazu beiträgt und eine andere ist, dass der Process-Explorer möglicherweise eine andere Methode nutzt, um an die CPUTimes der einzelnen Prozesse zu kommen.
Ein Rechts- oder Links klick auf das Symbol bewirkt das Verstecken oder Anzeigen meines Programms. hatte in der vorherigen Version nicht (richtig) funktioniert, da ich die Option Always-Stay-On-Top nicht im Quellcode aktiviert hatte.

Und nun, zu deinem Feature-Request. Da ich auf dem Gebiet der TNB-Manipulation noch nicht allzuviel Ahnung habe, was ich aber ändern werde, kann das noch ein kleines Weilchen 2-3Tage dauern, bis das realisiert wird.

Vielen Dank für deine Aufmerksamkeit und keep up the good work ;)

mfg
Benjamin

Luckie 26. Jan 2007 13:55

Re: MyTaskManager v0.3.2.1
 
Wenn die Liste der Prozesse länger ist, als das Fenster hoch und man runter scrollt, springt die Anzeige immer wieder nach oben, so dass man die letzten Prozesse nur ganz kurz sieht.

Wie sieht es mit Spaltenüberschriften aus? Was wird da zum Beispiel für ein Speicherverbrauch in der letzten Spalte angezeigt?

Schön wäre noch den jeweiligen Benutzer zu den Prozessen anzuzeigen.

Wenn ich einen Prozess beenden will, der sich nicht beenden lässt, erhalte ich keine Fehlermeldung. Warum nicht?

Darkmorph 29. Jan 2007 10:39

Re: MyTaskManager v0.3.2.1
 
Zitat:

Zitat von Luckie
Wenn die Liste der Prozesse länger ist, als das Fenster hoch und man runter scrollt, springt die Anzeige immer wieder nach oben, so dass man die letzten Prozesse nur ganz kurz sieht.

Wie sieht es mit Spaltenüberschriften aus? Was wird da zum Beispiel für ein Speicherverbrauch in der letzten Spalte angezeigt?

Schön wäre noch den jeweiligen Benutzer zu den Prozessen anzuzeigen.

Wenn ich einen Prozess beenden will, der sich nicht beenden lässt, erhalte ich keine Fehlermeldung. Warum nicht?

So,
Neue Version ist draussen... Ist immer noch nicht wirklich schön, aber funktional :)
Beim nicht erfolgreichen beenden von Programmen gibt es jetzt Fehlermeldungen...
Spaltenüberschriften sind jetzt auch vorhanden, auch wenn nich schön :)
Die Anzeige springt jetzt nicht mehr...

Bitte meldet mir, falls es doch noch irgendwo hackt.

So, als nächstes möchte ich Userdraw in der Listbox realisieren (also prozesso über 30% rot zeichnen usw) und dann vielleicht mal Sortierung einführen...


mfg Benjamin

Luckie 29. Jan 2007 10:43

Re: MyTaskManager v0.3.2.1
 
Warum nimmst du eigentlich keinen Listview?

Du kannst ja mal gucken, was der Taskmanager noch so alles anzeigt und dir da Anregungen holen, was du noch alles anzeigen könntest. Eine Gruppierung nach Parent- und deren Childprozessen wäre eventuell auch schön.

PS: Alle Dateien, die mit einer Tilde anfangen, die DCUs usw. brauchen nicht mit ins Archiv.

Darkmorph 29. Jan 2007 13:57

Re: MyTaskManager v0.3.2.1
 
So neue Version 0.3.3.3 ist geupped...

Hi Lucki, werde mir die Listview-Komponente mal ansehen... hab ich noch nicht mit gearbeitet, also kann ich dazu nix sagen.
Neues Feature: Prozesse die unter 10% CPU-Time verbrauchen werden blau gemalt und alle die drüber sind rot :)
meine erste USER-DRAW-LISTBOX :)

mfg

Benjamin

Darkmorph 30. Jan 2007 12:56

Re: MyTaskManager v0.3.2.1
 
so, hab mal wieder eine Neue Version kompiliert.
Ab sofort gibts ein PopUp-Menu, welches man durch Rechtsklick auf das Symbol in der Notify Area und durch Klick aufs Programm selber erreicht. Das Programm merkt sich ausserdem ab sofort, wo es beim letzten Beenden positioniert war, d. h. wenn es wieder gestartet wird, erscheint es an genau dieser Stelle. Darüber hinaus wurden einige Bugfixes vorgenommen.

@Luckie
Ich hab mir die TListview-Komponente grob angeschaut und werde in nächster Zeit bestimmt auch diese bei meinem Programm einführen, nur müsste ich zuviele Anpassungen vornehmen, die ich vermeiden will, solange mein Programm noch nicht 100%-Bugfree ist...

mfg
Benjamin

Luckie 30. Jan 2007 13:01

Re: MyTaskManager v0.3.2.1
 
Zitat:

Zitat von Darkmorph
nur müsste ich zuviele Anpassungen vornehmen,

Dann ist es schlecht designet. Daten sollten von der Programmoberfläche immer, aus genau diesem Grund, getrennt verwaltet werden. Ich würde es machen wie mit dem Bank Beispiel aus dem Unterricht: Jeder Prozess ist eine Klasse und alle Prozess-Objekte werden in einer Containerklasse verwaltet.

Darkmorph 30. Jan 2007 13:30

Re: MyTaskManager v0.3.2.1
 
wenn du dir den source-code ansehen würdest, würdest du merken das ich es getrennt habe...
nur will ich jetzt erst das prog einigermassen funktional bekommen, bevor ich schönungsarbeiten vorantreibe...

außerdem habe ich noch nie mit der TListview gearbeitet und müsste mich da erst hineinarbeiten und dazu hab ich momentan nicht die Zeit und Muse :P

mfg
benjamin

PS: Ich weiß schon so ungefähr was Objektorientierung bedeutet :P
Ziehst du immer ohne vorher in quellcode geschaut zu haben über jenen her?


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:22 Uhr.
Seite 1 von 2  1 2   

Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf