Назад | Перейти на главную страницу

Полная реализация локальной учетной записи пользователя, добавленной через командную строку

Я работаю на объекте заказчика, заказывая только что доставленные системы Windows 7. Системы были созданы с базовой настройкой, которая включала все основное программное обеспечение, необходимое для клиента. Кроме для локальной (не администратора) учетной записи, которая требуется для этого приложения.

Я знаю, что могу запустить net user команда для программного добавления желаемой локальной учетной записи. Однако эта команда не полностью настраивает локальную учетную запись. Вам все равно нужно войти в него (и увидеть ваш рабочий стол готовится сообщение) до того, как для этой учетной записи будет выполнена полная настройка Windows. Но я не хочу этого делать - я просто хочу запустить свой сценарий PowerShell и сказать «Готово!»

Итак, после запуска net user есть ли способ с помощью командной строки или действия PowerShell запустить процесс, который полностью заполняет учетную запись?

редактировать

Моя конечная цель - получить доступ к папке «Автозагрузка» для создаваемой мной учетной записи, чтобы я мог копировать некоторые ярлыки. И сделать все это с помощью сценария PowerShell с Нет взаимодействие с пользователем.

Редактировать 2

И хотя мне нужно решение для работы с PowerShell 2, мне также интересно увидеть любое решение, которое будет работать в любой более поздней версии PowerShell.

Протестировано в Wondows 7 Professional.

Сначала вы увидите Ваш рабочий стол готовится сообщение при первом входе в систему.

НО: ваша цель, добавление ярлыков в автозагрузку, достижима и работает.

  1. создайте файл со следующим содержимым и сохраните его в желаемом месте как файл * .reg:

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Lsa]
    "LimitBlankPasswordUse"=dword:00000000
    
    [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Lsa]
    "LimitBlankPasswordUse"=dword:00000000
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
    "LimitBlankPasswordUse"=dword:00000000
    

Это позволяет интерактивный вход в систему для учетных записей с пустыми паролями (ссылка1) (ссылка2)

  1. запустить командную строку с повышенными правами

  2. импортировать рег-ключ

    regedit.exe /s "C:\tmp\reg.reg"
    
  3. Создайте свою учетную запись пользователя

    net user /ADD <username>
    
  4. бегать runas как ваш созданный пользователь. Я начал пинговать и перенаправил его вывод на NUL, чтобы дождаться создания профиля.

    echo | runas /env /profile /user:<username> "cmd /c ping 127.0.0.1 -n 5 >NUL"
    
  5. Создайте каталог автозагрузки для вашего пользователя

    mkdir "C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
    
  6. Создайте ярлык в папке автозагрузки, например через сценарий PowerShell (пример)

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