Hallo zusammen,
Dieses Tool bestehend aus zwei Programmen ermöglicht es User in einem kleinen einfachen Rahmen zu Überwachen. Es wird regelmäßig mitgeschnitten welche sichtbaren geöffneten Fenster geöffnet sind.
Benutzung: Der Programmteil "logon.exe", generiert aus "logon.au3", muss im Autostartordner hinterlegt werden. Es ruft das eigentliche Programm "systemstart.exe", generiert aus systemstart.au3", auf. Unter C:\WINDOWS wird die Logdatei "screen.log" erstellt und später das Protokoll zu finden ist.
logon.au3:
systemstart.au3:
#cs
Tool zum "Überwachen" der PC Nutzung. Es werden alle sichtbaren
Programme erkannt und in einem Textfile gespeichert. Die Abfrage
der geöffneten Fenster erfolgt regelmäßig.
Um Sicherzugehen, dass das Programm nicht aus dem Autostart entfernt
wird, wird geprüft ob das Tool zum Aufrufen des Programms noch
eingetragen ist.
#ce
;Endlosschleife, das Programm terminiert somit erst beim Abmelden und läuft stetig im Hintergrund
For $a=1 to 2
;Herausfinden welche sichtbaren Fenster geöffnet sind und diese Protokollieren
$window = WinList()
For $i = 1 to $window[0][0]
If $window[$i][0] <> "" AND IsVisible($window[$i][1]) Then
$fenstername = $window[$i][0]
Schreiben()
EndIf
Next
Check()
;Leerzeile zwischen den Datenblöcken zur Übersichtlichkeit enfügen
$datei=FileOpen("C:\WINDOWS\screen.log",1)
FileWriteLine($datei,"")
FileClose($datei)
$a=1
Sleep(60000)
Next
Func Schreiben()
;Daten in das Logfile schreiben
$datei=FileOpen("C:\WINDOWS\screen.log",1)
FileWriteLine($datei, "User: " & @UserName & "; Uhrzeit: " & @HOUR & ":" & @MIN & ":" & @SEC & "; Anwendung: " & $fenstername)
FileClose($datei)
EndFunc
Func IsVisible($handle)
;Überprüfung auf Sichtbarkeit der Fenster
If BitAnd( WinGetState($handle), 2 ) Then
Return 1
Else
Return 0
EndIf
EndFunc
Func Check()
$pfad = @StartupDir & "\logon.exe"
If FileExists($pfad) Then
Sleep(100)
Else
FileCopy("C:\WINDOWS\auto.exe",$pfad)
EndIf
EndFunc
Alles anzeigen
Das Logfile sieht dann so aus:
[...]
User: Stefan; Uhrzeit: 21:23:55; Anwendung: Windows Task-Manager
User: Stefan; Uhrzeit: 21:23:55; Anwendung: Neues Thema erstellen - Skripte - .: autoit.de :. - Das deutsche AutoIt-Forum - Mozilla Firefox
User: Stefan; Uhrzeit: 21:23:55; Anwendung: AutoIt-Hilfe (Deutsch)
User: Stefan; Uhrzeit: 21:23:55; Anwendung: Program Manager
User: Stefan; Uhrzeit: 21:26:34; Anwendung: Windows Task-Manager
User: Stefan; Uhrzeit: 21:26:34; Anwendung: AutoIt-Hilfe (Deutsch)
User: Stefan; Uhrzeit: 21:26:34; Anwendung: Neues Thema erstellen - Skripte - .: autoit.de :. - Das deutsche AutoIt-Forum - Mozilla Firefox
User: Stefan; Uhrzeit: 21:26:34; Anwendung: Program Manager
[...]
Viele Grüße und Spaß beim benutzen oder weiterentwickeln,
Stefan
Edit:
Mir ist aufgefallen, dass es durchaus sinnvoll ist das Datum mitzuschreiben. Dazu Zeile 32 gegen folgende austauschen:
FileWriteLine($datei, "User: " & @UserName & "; Tag: " & @MDAY & "." & @MON & "." @YEAR & " Uhrzeit: " & @HOUR & ":" & @MIN & ":" & @SEC & "; Anwendung: " & $fenstername)
Gruß,
Stefan