我的部署脚本启动后,我试图在WinPE 4.0下运行它:
Start-Process x:\ windows \ notepad.exe -Credential(Get-Credential)
我为Credential弹出窗口提供了正确的凭据,但后来我收到了这个错误:
cmdlet命令管道位置1的Get-Credential 提供以下参数的值: 凭据 start-process:由于错误,无法运行此命令:指定的服务不作为已安装的服务存在。 在行:1个字符:1 + start-process x:\ windows \ system32 \ notepad.exe -Credential(Get-Credential) + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:InvalidOperation :( :) [Start-Process],InvalidOperationException + FullyQualifiedErrorId:InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
如果我删除-Credential开关,notepad.exe会正确执行,只是为了让您知道。
在Windows Server 2012上运行相同的确切行(使用-Credential)可以很好地工作,所以我认为PowerShell 3.0或WinPE 4.0下的.NET 4.0都缺少了。
感谢您提供任何帮助或指示。
答案 0 :(得分:0)
尝试传入以编程方式创建的凭据,例如:
$passwd = ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force
$cred = new-object System.Management.Automation.PSCredential "username",$passwd
Start-Process x:\windows\notepad.exe -credential $cred
答案 1 :(得分:0)
您无法在备用凭据下启动进程,因为WinPE没有(或至少公开)安全帐户管理器(SAM)。由于WinPE无法加入Active Directory域,因此无法在域凭据下启动进程。此外,由于WinPE没有(或者可能根本不公开)安全帐户管理器(SAM),因此您无法在WinPE下创建自定义用户帐户。
答案 2 :(得分:0)
将空字符串参数传递给-Credential参数:start-process x:\ windows \ system32 \ notepad.exe -Credential""
这将显示凭据对话框,但无需进行身份验证,因为WinPE中未安装必要的服务。
Darrick West