计划的 Powershell 在触发时不会 运行,在手动 运行 时不会停止 运行ning
Scheduled Powershell won't run when triggered, won't stop running when run manually
我正在尝试从 Windows 任务计划程序将 Powershell 脚本安排到 运行。当从 PS window 手动 运行 时,该脚本工作正常。但是,当我将其作为计划任务的操作时,会出现两个问题:
- 当触发器发生时,任务不会启动。
- 当我从 Task Scheduler 中手动 运行 任务时,一个空的 Powershell 控制台 window 会出现几秒钟,然后消失。任务状态显示“运行”,并一直保持这种状态直到我手动结束它。
我已确认已使用正确的用户权限设置任务。
我已在事件查看器中确认触发事件已发生并已正确记录。
任务的操作是:
"Start a Program" Program/script: powershell
Arguments: -File "C:\Users\<username>\Desktop\script.ps1"
这是我脚本的相关部分:
Start-Sleep -Seconds 2
If (!(Test-NetConnection -ComputerName www.example.com -InformationLevel "Quiet")) {
#The code in here won't affect basic execution, since during testing this If condition evaluates to False
} Else {
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
[System.Windows.Forms.MessageBox]::Show("You're good to go!" , "Info" , 3)
Exit
}
我希望当我测试这个任务时,我应该只弹出消息框,然后任务应该停止 运行ning。这些都没有发生,我真的不知道为什么。
问题是“运行 脚本在此系统上被禁用。”
about_Execution_Policies https://go.microsoft.com/fwlink/?LinkID=135170
SecurityError: ParentContainsErrorRecordException | UnauthorizedAccess
解决方案是将 -ExecutionPolicy Bypass
添加到任务参数中。
(现在有一个控制台 window 出现在屏幕上的单独问题 -WindowStyle Hidden
没有解决,但是对于这个问题有很多类似的文档,我会 post如果找不到合适的解决方案,请提出新问题)。
我正在尝试从 Windows 任务计划程序将 Powershell 脚本安排到 运行。当从 PS window 手动 运行 时,该脚本工作正常。但是,当我将其作为计划任务的操作时,会出现两个问题:
- 当触发器发生时,任务不会启动。
- 当我从 Task Scheduler 中手动 运行 任务时,一个空的 Powershell 控制台 window 会出现几秒钟,然后消失。任务状态显示“运行”,并一直保持这种状态直到我手动结束它。
我已确认已使用正确的用户权限设置任务。
我已在事件查看器中确认触发事件已发生并已正确记录。
任务的操作是:
"Start a Program" Program/script:
powershell
Arguments:-File "C:\Users\<username>\Desktop\script.ps1"
这是我脚本的相关部分:
Start-Sleep -Seconds 2
If (!(Test-NetConnection -ComputerName www.example.com -InformationLevel "Quiet")) {
#The code in here won't affect basic execution, since during testing this If condition evaluates to False
} Else {
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
[System.Windows.Forms.MessageBox]::Show("You're good to go!" , "Info" , 3)
Exit
}
我希望当我测试这个任务时,我应该只弹出消息框,然后任务应该停止 运行ning。这些都没有发生,我真的不知道为什么。
问题是“运行 脚本在此系统上被禁用。”
about_Execution_Policies https://go.microsoft.com/fwlink/?LinkID=135170 SecurityError: ParentContainsErrorRecordException | UnauthorizedAccess
解决方案是将 -ExecutionPolicy Bypass
添加到任务参数中。
(现在有一个控制台 window 出现在屏幕上的单独问题 -WindowStyle Hidden
没有解决,但是对于这个问题有很多类似的文档,我会 post如果找不到合适的解决方案,请提出新问题)。