Я пытаюсь создать утилиту, похожую на брошенную Microsoft Super Fast User Switcher (download), которая позволяет быстро переключаться между пользователями без прохождения экрана приветствия.Создать сеанс интерактивного входа в систему
У меня есть рабочая реализация с использованием недокументированных WinStationConnectW
API (наряду с WTSEnumerateSessions
), но он может перейти только к пользователю, который уже вошли в систему.
Как я могу создать сеанс регистрации, чтобы его можно переключить пользователю, который не вошел в систему?
Мне нужно только поддерживать XP, хотя было бы неплохо работать с Vista/Seven. (Мой текущий код уже делает)
Я знаю, что это возможно, потому что Super Fast User Switcher делает это. (Хотя для этого требуется служба Windows)
Я пишу C#, но я могу перевести любой ответ на C#.
Вы попробовали P/Invoking LogonUser? –
@nobugz: 'LogonUser' создает токен пользователя, а не сеанс входа в систему. Я уже использую его для проверки паролей. – SLaks
Поскольку другие группы выполняют некоторую аналогичную работу с такими вещами, как Citrix или GotoMyPC, я бы подумал, что это выполнимо. Тем не менее, они могут что-то делать в своей службе, поэтому я не уверен. – jcolebrand