首页 文章

无法从powershell为系统用户运行exe

提问于
浏览
3

我试图在Windows-7 64位机器上运行PowerShell脚本的exe . 在这个脚本中,我想以另一个用户身份运行exe . 当用户调用脚本是实际用户时,它可以工作 . 但在我的情况下,这个powershell脚本将从系统用户帐户执行,并且系统用户脚本不起作用 . 这里是一个简单的代码我用来打开记事本 . 此代码对系统用户失败 .

$username = 'MyDomain\MyUser'
$password = 'mypswd'
$cred = New-Object System.Management.Automation.PSCredential -ArgumentList @($username,(ConvertTo-SecureString -String $password -AsPlainText -Force))
Start-Process -Credential $cred  "notepad.exe"

我已将执行策略设置为不受限制 . 当我为系统用户运行此脚本时,我得到错误

Start-Process:由于错误,无法执行此命令:拒绝访问 . 在D:\ temp \ trythis.ps1:4 char:14 Start-Process <<<< -Credential $ cred“notepad.exe”CategoryInfo:InvalidOperation :( :) [Start-Process],InvalidOp erationException FullyQualifiedErrorId:InvalidOperationException,Microsoft .PowerShell.C ommands.StartProcessCommand

有什么办法可以为系统用户运行这个脚本吗?

1 回答

  • 0

    这里最可能的问题是权限一(我可以通过为帐户设置拒绝条目来重现您的问题的唯一方法) .

    我建议以下内容确认权限是否正确 . 说明适用于Windows XP,SP3 - 根据您的版本进行调整!

    • 右键单击"notepad.exe"并单击 Properties

    • 单击 Security 选项卡

    • 单击 Advanced 按钮

    • 单击 Effective Permissions 选项卡

    • 单击 Select... 按钮

    • 输入要检查的帐户,并确认该帐户具有适当的读取和执行权限 .

相关问题