Programm-Aktivität

7

7bits

Gast
Hallo,
kann man unter Windows feststellen, ob jemand ein geöffnetes Programm tatsächlich verwendet, sprich darin rumklickt?
 
Das Fenster des Programms wird dann in aller Regel den Fokus haben, was man abfragen kann. Ein Klick ohne Fokuswechsel der Programme ist mir gerade nicht bekannt. Scrollen geht manchmal, wenn ein Programm im Hintergrund ist, aber sobald geklickt wird springt das um.
 
DaysShadow schrieb:
Das Fenster des Programms wird dann in aller Regel den Fokus haben, was man abfragen kann.

steht sowas auch im Windows-Task-Manager oder wie gelangt man an solche Daten (bestenfalls nachträglich) ?
 
Nachträglich kommt man nicht an solche Daten. Das steht auch nicht im Taskmanager.

Deine Frage ist sehr unspezifisch. Worum geht es dir überhaupt?
 
ich habe ein Tool, dass die PC-Nutzungsdauer pro Tag nachträglich darstellen kann und Apple Iphone macht das doch auch. Jetzt kam ich auf die Idee sowas auch für die verwendeten Programme zu machen, wobei nur ein geäffnetes Programm keine Aussage üerer die Verwendung macht...
 
Zuletzt bearbeitet von einem Moderator:
Das dürfte ziemlich schwierig sein, da es auch Programme gibt die genutzt werden, ohne das Aktionen des Nutzers passieren. Bspw. läuft Spotify im Hintergrund und spielt Musik ab. Wird es genutzt? Ja. Macht der Nutzer dauerhaft etwas damit? Nein. Ähnliches für Browser, ich öffne eine Seite und lese Text darauf. Nutze ich in der Zeit den Browser nicht?

Du kannst tracken, wie lange ein Programm gelaufen ist, wie lange es im Fokus war, wie oft es geöffnet wird z.B., solche Dinge. Wie lange ein Programm genutzt wird, kann, behaupte ich mal frei heraus, so nicht allgemeingültig ermittelt werden. Dafür bräuchte es definierte Kriterien und die gibt es nicht. Es steht dir natürlich frei solche Kriterien zu definieren, wenn du welche findest und sie dir genügen.
 
Das sind aber 2 unterschiedliche paar Schuhe. Die PC-Nutzungsdauer pro Tag wird von Windows aktiv überwacht und geloggt. Zum einen werden alle An- und Abmeldeereignisse protokolliert, wodurch du auf die Sekunde genau bestimmen kannst, welcher Nutzer wie lange angemeldet war, zum anderen bietet Windows durch das Thema Jugendschutz hier eine Reihe von zusätzlichen Funktionen. Und was du hier auch nicht erkennst: Wie aktiv war der Nutzer? Es gibt an der Stelle keinen Unterschied zwischen "sich angemeldet, ne Stunde joggen, sich wieder abmelden" und "eine Stunde in CoD rumballern". Es ist in jedem Fall einfach nur eine Stunde Aktivität, sofern der Arbeitsplatz nicht gesperrt wird.

Die Überwachung einzelner Programme ist nicht vorgesehen. Es wird nirgends vom Betriebssystem protokolliert, welche Anwendung wann gestartet oder gestoppt wird. Und noch viel weniger wird protokolliert, was in der Anwendung getan wird. Beispiele, warum das keinen Sinn ergeben würde:
  • Bist du in deinem Browser inaktiv, wenn du 2 Stunden lang Youtube schaust, nur weil du nichts klickst?
  • Bist du in Word aktiv, wenn einmal pro Minute irgendeine Maustaste gedrückt wird?

Dein Vorhaben ist nicht mit dem Konzept von Windows-Anwendungen übereinzubringen, da jede Anwendung anders genutzt werden kann. Es kann keinen generischen Ansatz geben, der das Problem auch nur halbwegs akzeptabel abdeckt. Deshalb schrieb ich im Vorfeld: Deine Anfrage ist zu unspezifisch.

Wenn du eine begrenzte Auswahl an Programmen hast, dann kannst du dir für jedes Programm ein Konzept überlegen, wie du die Nutzung überwachst. Aber ein generischer Ansatz ist einfach nicht möglich.
 
ok und wo könnte ich den Fokus eines Anwendungsprogramms abragen? Also wenn jemand word geöffnet hat, mcht es keinen Sinn das dauerhaft nicht im Fokus zu haben!
 
Ich schreibe einen Aufsatz über etwas und muss zwischendurch recherchieren. Dann bleibt Word mal 30 Minuten im Hintergrund und wird nicht angerührt. Es ist geöffnet, aber nicht genutzt. Es macht keinen Sinn in dem Fall das Programm zu schließen. Nachvollziehbar?

Wo und wie das geht, da musst du dich mit der WinAPI beschäftigen. Vermutlich geht das auch mit PowerShell oder Batch. Ich habe mal irgendwann mit Python ein bisschen dort herumgespielt. Für so gut wie jede Programmiersprache gibt es irgendeine Anbindung an die WinAPI.
 
Zurück
Oben