【发布时间】:2015-03-30 08:18:30
【问题描述】:
我有一个使用 PowerShell Studio 创建并导出为 PS1 文件的 GUI。我现在正尝试通过使用另一个用户的凭据调用它来启动这个 GUI。
当我运行代码时,它甚至没有给出错误消息。 PowerShell 会在几秒钟内弹出并再次关闭,但没有启动任何内容。跟随this thread,我想我遵循了正确的语法。
$Script = 'S:\Prod\Script center\GUI Script.ps1'
$Credentials = Get-Credential
$powershellArguments = "-file '$Script'", "-noexit", "-verb runas"
Start-Process powershell -Credential $Credentials -ArgumentList $powershellArguments
这些也不起作用:
Start-Process powershell -Credential $Credentials -ArgumentList "-noprofile -command &{Start-Process powershell -verb runas -File 'S:\Prod\Script center\GUI Script.ps1'}"
Start-Process powershell -Credential $Credentials -ArgumentList "-noprofile -command &{Start-Process $script -verb runas}"
这个是在询问我的凭据,尽管它们已经保存在变量$Credentials 中。但是,启动的 powershell 控制台不会以凭据中的用户身份启动:(
$cmd = 'powershell.exe'
$arguments = "-NoExit", "-NoProfile", "-WindowStyle Maximized", '-NoLogo', "Credential $Credentials", "File '$script'"
Start-Process $cmd -ArgumentList $arguments -Verb runAs
我确定它与 GUI 脚本无关,因为它工作得非常好:
& 'S:\Prod\Script center\GUI Script.ps1'
非常感谢任何帮助。
【问题讨论】:
标签: powershell arguments runas