Как выбрать учетную запись на экране входа в систему Windows7 запуском, вводящим имя?

Когда MacOS загружается, и пользователи запрашивается выбрать учетную запись, в которую он хочет войти в систему, пользователи могут или нажать имя / значок учетной записи с мышью или просто ввести от имени учетной записи.

Я хочу сделать то же в экране входа в систему Windows7: экран Входа в систему открывается, я начинаю вводить свое имя учетной записи, я выбираю учетную запись с, входят, и затем я ввожу пароль и вхожу снова. Никакое использование мыши не включено.

(Я знаю о циклическом повторении вкладки и hard-to-follow-the-almost-invisible-marker-of-where-the-focus-is-right-now),

7
задан 23.01.2011, 11:09

3 ответа

Вы обращаетесь к записи специализированного Учетного Поставщика. Я не попытка записать один для Вас, даже для 5 000 представителей, но я могу указать на Вас в правильном направлении.

Статья Create Custom Login Experiences With Credential Providers For Windows Vista объясняет основы перемещения Microsoft из более ранней модели GINA. Это разрабатывает образец, который демонстрирует новые возможности через гибридного учетного поставщика, который позволяет имени пользователя, паролю и доменному имени быть сохраненным на смарт-карте, так, чтобы на вставку карты, пользователь был автоматически зарегистрирован.

Microsoft также предусматривает Учетные Образцы Поставщика загрузки, которые включают документ обзора, описывающий, как создать их.

Если Вы действительно намереваетесь разработать своего Учетного Поставщика, я предлагаю сильно отладить его в виртуальной машине по очевидным причинам.

9
ответ дан 07.12.2019, 14:33

При размышлении об этом снова, существуют намного более легкие способы выполнить это:

  1. Опция один (Подтвержденный): старый добрый прием, чтобы заставить программу работать на экране входа в систему.:-)

    1. Возьмите владение и замените %WINDIR %\System32\osk.exe программой от шага 4.

    2. Перейдите к Простоте Центра Доступа, Использование компьютер без мыши или клавиатуры.

    3. Включите экранную клавиатуру использования.

    4. Сохраните и возвратитесь, в левой стороне нажимают, изменяют административные настройки.

    5. Нажмите, чтобы применить настройки к рабочему столу входа в систему и сохранить.

  2. Опция два (Должен работать): Услуги всегда работают, таким образом, они могут запустить программы на экране входа в систему.

    1. Запишите сервис C / C#, который запускается рано, возможно, набор, который это - тип запуска для начальной загрузки в реестре.

    2. Позвольте сервису обнаружить C / C#, когда winlogon.exe запускается, после которого он запускает нашу программу.

  3. Опция три (кажется, не работает): Планировщик задач предоставляет возможности для него, я попробовал, запустился на основе "Запуска" и на "Событии Winlogon WGA", но оба не успешно выполнялись, возможно, я должен установить другого пользователя, чем "Система" для этого для работы... Альтернатива: Уведомление Winlogon DLL

  4. Это позволяет нам запускать нашу собственную записанную программу в экране входа в систему!

    • Используя SetWindowsHookEx Вы могли создать рычаг WH_KEYBOARD для обработки входа.

      • Альтернатива: Создайте окно GUI и дайте тот фокус окна.
      • Альтернативные 2: при сокрытии пользователей, можно отследить поле имени пользователя, видеть AutoItX ниже.
         
    • Используя WMI Вы могли перечислить всех локальных пользователей.

    • Вызывание функций AutoItX позволяет Вам управлять Windows Login Screen из своего приложения. Это также позволит нам обнаруживать, если мы будем в экране входа в систему путем проверки, работает ли проводник.

      AutoItWindow показывает, что экран: Class: AUTHUI.DLL: LogonUI Logon Window и поле пароля называют Edit1, таким образом, можно на самом деле считать введенные данные.

    Таким образом необходимо смочь запустить программу, которая прислушивается к символам, Вы вводите, получаете список учетных записей и когда он находит, что соответствие автоматически заполнило бы соответствующую учетную запись.

    Я предложил бы C++ (Собственный компонент) или C# (PInvokes для вызовов API, легкого WMI), но любой язык мог бы соответствовать...

  5. Альтернатива:

Я думаю, что могло бы быть возможно только использовать скомпилированный сценарий AutoIt для выполнения этой задачи, поскольку можно отследить и управлять полем имени пользователя и также перечислить WMI, который является единственной вещью, необходимо получить эту работу. Возможно, необходимо отключить опцию значка панели задач хотя...

Можно использовать Информацию об Окне AutoIt (поместите ее как osk.exe) видеть имена классов в экране входа в систему.

8
ответ дан 07.12.2019, 14:33

Windows Vista и Windows 7 делают это из поля (вид) для доменных логинов.

Это только работает в выпусках Windows то соединение домена поддержки. Вы можете делать сценарий, который делает это для Вас на других выпусках - сообщенный мне, и я загляну к нему.

Запуск Group Policy Editor (Start > Run > gpedit.msc).

Искать Computer Config \ Windows Settings \ Security Settings \ Local Policies \ Security Options \ Interactive logon: Do not display last user name, и набор это к Enabled

В следующий раз, когда Вы входите в систему, необходимо смочь ввести имя пользователя, которое Вы хотите.

0
ответ дан 07.12.2019, 14:33

Теги

Похожие вопросы