2010-12-27 6 views
0

Ich erstelle eine Windows-Anwendung, die die Sitzungsdetails aller Benutzer erfasst.Capture das aktive Fenster zu jpg mit C#?

Ich möchte verfolgen, wie viele Benutzer mit meinem Computer über RDP-Sitzung verbunden sind. Möchten Sie alle ihre Aktivitäten mit Screenshot protokollieren.

Also ich würde gerne wissen, wie kann ich den aktiven Bildschirm erfassen. Ich habe 'RUNAS' versucht, aber es zeigt mir den aktuellen Screenshot, wo ich renne. Ich bin in der Lage, die Anwendungsdaten des Benutzers zu verwenden, aber nicht den tatsächlichen Bildschirm.

Ich habe auch versucht, LogonUser, CreateProcessAsUser, aber nicht bekommen tatsächlichen Punkt. Also lass es mich wissen, wie kann ich es tun?

Ich verwendete "Cassia" Google Bibliothek, um alle aktuellen angemeldeten Benutzer aufzulisten.

Dank Laxmilal

+0

Nebenbei: JPEGs für Screenshots [sind irgendwie schlecht] (http://lbrandy.com/blog/2008/10/my-first-and-last-webcomic/). – Arjan

+0

Mögliches Duplikat von [So nehmen Sie die Benutzersitzung mit C# ] (http://stackoverflow.com/questions/4489915/how-to-take-users-session-screenshot-using-c) von demselben Autor? – Arjan

+0

Versuchen Sie, einen Desktop von einer Sitzung zu erfassen, in der Sie nicht arbeiten? – Gabe

Antwort

0

Es wäre viel einfacher sein, Ihre Anwendung zu veranlassen, in dem Sitzung des Benutzers zur Inbetriebnahme, wenn sie in die Maschine einzuloggen, und dann die Benutzersitzung überwacht seine bereits in. Die inhärenten Probleme in Synchonisation mehrere Instanzen Ihrer laufenden Anwendung (eine pro Benutzer angemeldet) sind viel einfacher zu lösen, dann die Probleme mit einer Anwendung durch Windows-Sitzungen und führen Sie Code in mehreren verschiedenen Sitzungen auf einmal (und dann synchronisieren Sie alles sowieso).