Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过Windows任务计划程序运行脚本时隐藏对话窗口的PowerShell代码行?_Windows_Powershell_Taskscheduler - Fatal编程技术网

通过Windows任务计划程序运行脚本时隐藏对话窗口的PowerShell代码行?

通过Windows任务计划程序运行脚本时隐藏对话窗口的PowerShell代码行?,windows,powershell,taskscheduler,Windows,Powershell,Taskscheduler,我有一个由Windows任务调度器初始化的PS脚本,它每五分钟运行一次。我注意到,当它启动时,命令提示符会短暂打开然后消失(脚本本身的本质是可以理解的)。但是,我想把它隐藏在后台,因为每五分钟就会出现一次命令提示符,这可能会造成阻塞。我尝试在Windows任务计划程序中选中“隐藏”复选框,但结果是脚本无法运行 我还尝试在任务调度器属性的参数字段中编写-Hidden。脚本将不会运行 是否有一行代码可以使我的PS脚本在后台运行,而不会妨碍桌面环境的使用 我对用.bat或VB脚本包装它不感兴趣。我很好

我有一个由Windows任务调度器初始化的PS脚本,它每五分钟运行一次。我注意到,当它启动时,命令提示符会短暂打开然后消失(脚本本身的本质是可以理解的)。但是,我想把它隐藏在后台,因为每五分钟就会出现一次命令提示符,这可能会造成阻塞。我尝试在Windows任务计划程序中选中“隐藏”复选框,但结果是脚本无法运行

我还尝试在任务调度器属性的参数字段中编写
-Hidden
。脚本将不会运行

是否有一行代码可以使我的PS脚本在后台运行,而不会妨碍桌面环境的使用

我对用
.bat
或VB脚本包装它不感兴趣。我很好奇是否有一行PS代码可以添加到任何
.ps1
中。我知道下面提供了一个VB脚本解决方案,如果万不得已,我将不得不使用它:


简短的回答是否定的。由于PowerShell窗口的执行方式,它至少会在瞬间闪烁(例如
-WindowStyle隐藏时)。不幸的是,答案是您不感兴趣的解决方案之一:将其包装在可执行文件中或使用下面的VB脚本启动它

Dim shell,command
command = "powershell.exe -nologo -command \\path-to\your-script.ps1"
set shell = CreateObject("WScript.Shell")
shell.Run command,0'
可能重复的