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

时间:2012-07-20 10:30:30

标签: powershell

我正在尝试在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:由于错误,无法执行此命令:Access is den   IED。   在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 :(得分:0)

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

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

  1. 右键单击“notepad.exe”,然后单击属性
  2. 点击安全标签
  3. 点击高级按钮
  4. 点击有效权限标签
  5. 点击选择... 按钮
  6. 输入您要检查的帐户,并确认该帐户具有相应的读取和执行权限。
相关问题