我正在尝试在某个位置推出脚本以远程更改办公室激活。我以为我知道如何做到这一点,但我被困在一些奇怪的事情上。它总是给我这个错误
Start-Process : This command cannot be run due to the error: De gebruikersnaam of het wachtwo
ord is onjuist.
At line:2 char:1
+ Start-Process "\\10.0.0.1\scripts\WordActivationAdmin.ps1" -Credentia ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationExcepti
on
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartP
rocessCommand
我运行的代码是:
Set-ExecutionPolicy -Scope "CurrentUser" -ExecutionPolicy "Unrestricted" -Force
$hostname = get-content env:computername
$username = "$hostname\localUserAdmin"
$password = "Password"
$securePassword = ConvertTo-SecureString $password -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential $username, $securePassword
Start-Process "\\10.0.0.1\scripts\WordActivationAdmin.ps1" -Credential $credential
我 100%确定密码和用户名都是正确的。所以我认为我输入的用户名是错误的或类似的东西。
答案1
您不需要本地机器的主机名,而是需要远程系统的主机名。
尝试
$hostname = [System.Net.Dns]::GetHostEntry('10.0.0.1').HostName
有时主机名带有需要删除的后缀,例如.home
。在这种情况下,请使用
$hostname = [System.Net.Dns]::GetHostEntry('10.0.0.1').HostName.Split(".")[0]
顺便说一句。要在远程系统上运行某些东西,您需要Invoke-Command -ComputerName $hostname -Credential $credential -Scriptblock { ... }