Windows 以管理员身份运行PowerShell脚本并隐藏PowerShell窗口

Windows 以管理员身份运行PowerShell脚本并隐藏PowerShell窗口,windows,powershell,Windows,Powershell,我有一个PowerShell脚本,当我单击.bat文件启动它时,它需要以管理员身份运行,但是,我还需要隐藏PowerShell窗口。我有一个脚本,目前启动它作为管理员,但我需要它隐藏窗口以及。我曾尝试将in-WindowsStyle隐藏起来,但它不起作用。以下是我的启动脚本: @ECHO OFF SET ThisScriptsDirectory=%~dp0 SET PowerShellScriptPath=%ThisScriptsDirectory%PMCS_Full_InProgress.ps

我有一个PowerShell脚本,当我单击.bat文件启动它时,它需要以管理员身份运行,但是,我还需要隐藏PowerShell窗口。我有一个脚本,目前启动它作为管理员,但我需要它隐藏窗口以及。我曾尝试将in-WindowsStyle隐藏起来,但它不起作用。以下是我的启动脚本:

@ECHO OFF
SET ThisScriptsDirectory=%~dp0
SET PowerShellScriptPath=%ThisScriptsDirectory%PMCS_Full_InProgress.ps1
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%PowerShellScriptPath%""' -Verb RunAs}";

谁能帮我把窗户藏起来吗?谢谢您的时间。

问题解决了。我没有将
-windowstyle隐藏在
中,&{Start Process PowerShell-Arguments…}
所以它根本无法识别它。我正试图将它放在外面。谢谢你的帮助!

PowerShell-WindowsStyle hidden
将隐藏窗口。使用
-NoProfile
-ExecutionPolicy Bypass
应该已经作为管理部分运行了。因此,您的结束代码将是:
PowerShell-WindowsStyle hidden-NoProfile-ExecutionPolicy Bypass-C:\PMCS\u Full\u InProgress.ps1
。不需要更多。它看起来不像是以管理员身份运行的。不幸的是,是否有其他方法来安排它或使用它?因此我假设您只是右键单击.bat文件并说“以管理员身份运行””“是吗?否则,它们是在调用时使用提升权限运行脚本的方法。对于最高的提升,我将使用Sysinternals中的PsExec作为系统运行。您不需要在批处理文件中使用
start process
启动powershell。用我在你问题的注释中写的代码调用脚本。这并不像现在这样美好和正确