Я не могу прокомментировать непосредственно приведенную выше запись бентайлра, но я взял то, что он сделал, и добавил создание PSCredentials (вычислено из здесь ), чтобы позволить вам жестко кодировать учетные данные в сценарии.1003 *
Отказ от ответственности за спокойствие: будьте осторожны при использовании в сценарии учетных данных в виде открытого текста.В моем случае я использую общие учетные данные на машинах, которые запускаю.В зависимости от вашего случая вы можете создать зашифрованный файл учетных данных для хранения пароля (см. Ссылку выше).
Используемые учетные данные должны иметь доступ к реестру, если вы вошли в систему от этого пользователя.на машине, на которую вы нацеливаетесь.
$user = "Domain\Username"
$pass = ConvertTo-SecureString "Password" -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user,$pass
$reg = Get-WmiObject -List -Namespace root\default -ComputerName $server -Credential $cred | Where-Object {$_.Name -eq "StdRegProv"}
$HKLM = 2147483650
$value = $reg.GetStringValue($HKLM,"Software\Microsoft\.NetFramework","InstallRoot").sValue