Захватить активное окно в jpg с помощью С#?

Я создаю приложение Windows, которое фиксирует все детали сеанса пользователей.

Я хочу отслеживать, сколько пользователей подключено к моей машине с помощью сеанса RDP. Хотите регистрировать всю свою активность со снимком экрана.

Поэтому я хотел бы знать, как я могу захватить активный экран. Я попробовал «RUNAS», но он показывает мне текущий снимок экрана, где я бегу. Я могу использовать данные приложения пользователя, но не получаю фактический экран.

Я также пробовал LogonUser, CreateProcessAsUser, но не понял сути. Так что, пожалуйста, дайте мне знать, как я могу это сделать?

Я использовал библиотеку Google «cassia», чтобы перечислить всех текущих зарегистрированных пользователей.

Спасибо, Лаксмилал.


person Laxmi Lal Menaria    schedule 27.12.2010    source источник
comment
Кстати: JPEG для снимков экрана это плохо< /а>.   -  person Arjan    schedule 27.12.2010
comment
Вы пытаетесь захватить рабочий стол из сеанса, в котором вы не работаете?   -  person Gabe    schedule 27.12.2010
comment
Можете ли вы запустить процесс, когда пользователь входит в систему, например, из автозагрузки?   -  person Daniel Mošmondor    schedule 27.12.2010
comment
Вы уверены, что это разрешено законом? По немецким законам это запрещено :)   -  person edze    schedule 27.12.2010


Ответы (1)


Было бы намного проще заставить ваше приложение запускаться в сеансе пользователя, когда они входят в систему, а затем отслеживать уже существующий сеанс пользователя. Проблемы, связанные с синхронизацией нескольких экземпляров вашего запущенного приложения (по одному на каждого пользователя, вошедшего в систему) гораздо проще решить, чем проблемы, связанные с тем, что приложение проходит через пользовательские сеансы Windows и запускает код в нескольких разных сеансах одновременно (и затем все равно синхронизирует все это).

person GWLlosa    schedule 27.12.2010