Ich bin auf die Idee gekommen (nicht als erster) mal ein Task Manager mit AutoIt zu schreiben, das Konzept hab ich schon aber da mein Grafische bzw Gui Technische Vorstellung arg beschränkt ist ob es hier jemand gibt der mir helfen will. Also einer der sich mit GUI auskennt und vl noch jemand der zb weiss wie man ein Programm einfriert.
Mein Konzept
1. Gui
2. Treeview
-> Prozess.exe
-> Sichtbares Fenster
-> Sichtbares Fenster 2.
-> usw.
3. Sobald man auf ein eintrag klickt bekommt man Infos über den Prozess.
-Pfad
-Name
-Pirotät
-User
-....
Man hat dann funktionen wie:
- In den Vordergrund, Hintergrund, Maximieren, Minimieren, Beenden, Killen, Einfrieren (was euch noch so einfältt)
Der Teil mit dem Daten holen ist schon so gut wie erledigt (Muss Abrfagen mit WMI raussuchen).
Interesse?
mfg Tom
Spoiler anzeigen
#include <GUIConstantsEx.au3>
#include <TreeViewConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 633, 447, 193, 125)
$Tree = GUICtrlCreateTreeView(72, 56, 249, 313)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
#include <Array.au3>
[/autoit] [autoit][/autoit] [autoit]$o = ObjGet('winmgmts:\\localhost\root\CIMV2')
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$array = WinList ()
dim $pidtowindow[UBound ($array)-1][2]
for $i = 1 to UBound ($array) -1
$pidtowindow[$i-1][0] = WinGetProcess ( $array[$i][1] )
$pidtowindow[$i-1][1] = $array[$i][1]
Next
$array = ProcessList ()
;~ _ArrayDisplay ($array)
for $i = 1 to UBound ($array) -1
ConsoleWrite ($array[$i][0] & @lf)
$cur = GUICtrlCreateTreeViewItem ( $array[$i][0], $Tree)
;~ ProcessGetStats ($array[$i][1])
for $s = 0 to UBound ($pidtowindow) -1
if $pidtowindow[$s][0] == $array[$i][1] Then
$title = WinGetTitle ($pidtowindow[$s][1] )
if $title <> '' and BitAND (WinGetState ( $pidtowindow[$s][1], ''),2) then
ConsoleWrite ( "- " & $title & @lf )
GUICtrlCreateTreeViewItem ( $title, $cur)
EndIf
EndIf
Next
Next
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
case $Tree
ConsoleWrite ("tree" & @lf)
EndSwitch
WEnd