【问题标题】:Closing off a process when complete in Powershell在 Powershell 中完成后关闭进程
【发布时间】:2021-05-16 23:03:58
【问题描述】:

下午好,

我目前正在运行一个脚本,在我的脚本中有两行代码。 第一行以管理员权限安装 OneDrive,无需请求许可(绕过 UAC)。 第二行运行应用程序。

我的问题是当第二行运行时会显示以下内容:

“无法使用完全管理员权限运行 OneDrive - 请在没有管理员权限的情况下重新启动 OneDrive”

Start-Process -FilePath "$env:USERPROFILE\Downloads\OneDriveSetup.exe" -ArgumentList “/peruser /childprocess /cusid:$cusid /silent” –wait 
[System.Diagnostics.Process]::Start($newexepath) | Out-Null #$newexepath = "c:\users\test\appdata\local\microsoft\OneDrive\OneDrive.exe"

有没有办法在完成后停止第一行中的进程,基本上是告诉脚本忘记绕过 UAC?

【问题讨论】:

  • 将其拆分为两个脚本:一个正在安装,第二个正在运行。只运行具有高权限的第一个。
  • @montonero 不是我正在寻找的答案,但它确实有效。理想情况下会喜欢它在一个脚本中,但我知道这可能是不可能的。

标签: powershell uac


【解决方案1】:

您可以尝试在 cmd 命令中使用“net user administrator /active:no”临时禁用管理权限。然后,尝试重新启动 OneDrive 客户端并查看它是否有帮助。如果是这样,您可以通过在 cmd 命令中使用“net user administrator /active:yes”来响应管理权限。它应该有助于解决 OneDrive 中的这个问题。

另外,我还发现这个问题可能是由于任务计划程序中的最高权限设置造成的。您可以从开始搜索任务计划程序,然后单击“任务计划程序库”。然后在列表中找到 OneDrive 并双击它。在打开的窗口中,确保未选中“以最高权限运行”选项,然后单击“确定”保存设置。重新启动计算机后,错误消息应该消失了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多