(Get-wmiobject win32_computersystem) .username возвращает недопустимое значение - PullRequest
0 голосов
/ 17 апреля 2019

В Windows 8.1 на английском OS / 64-битный ПК, вошедший в систему с учетной записью Microsoft. Когда я выполняю вышеупомянутую команду, формат имени пользователя будет следующим: //

В Windows 8.1 на японской ОС / 64-битный ПКвход в систему с учетной записью Microsoft. Когда я выполняю указанную выше команду, формат имени пользователя будет следующим: /

Примечание. Имя системы: lenovo-PC Имя домена: LENOVO-PC Имя пользователя: TestAccount

Почему этовозвращает другой формат в другой среде ПК?

Моя логика не в состоянии получить токен для текущего вошедшего в систему пользователя.

Пожалуйста, помогите всем.

1 Ответ

0 голосов
/ 17 апреля 2019

Есть много способов получить имя пользователя. Вот несколько примеров:

(get-wmiobject Win32_ComputerSystem).username

или

[Environment]::UserName

или

whoami

или

[System.Security.Principal.WindowsIdentity]::GetCurrent().Name

Для вашей конкретной проблемы попробуйте это:

$domain = $env:UserDomain
$user = $env:UserName
$username = "$domain\$user"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...