如何计划在注销时运行Windows任务

x9ybnkn6  于 2022-11-18  发布在  Windows
关注(0)|答案(2)|浏览(477)

你好,
我使用的是Windows 7计算机。
我希望我的计算机在每次从系统注销时都提醒我一些我可能不会忘记的事情。
为了做到这一点,我想到了“Windows任务调度程序”。
但是,在可能的触发器列表(“开始the task”组合框)中,我只看到以下可能性:

  • 按计划(固定日期/时间)
  • 登录时(登录PC时)
  • 启动时(启动电脑时)
  • 空闲时(我认为是PC未被其他任务占用时)

我看不到“注销时”或“关机时”的可能性。
有人知道这种可能性是否可以添加(也许通过处理注册表)吗?
谢谢
多米尼克

iqxoj9l9

iqxoj9l91#

就我所研究的,不支持这个功能的原因很简单。它不能保证任务调度服务在注销事件触发时正在运行,如果是这样,它也不能保证您启动它的脚本不会因计算机关闭而立即终止。
您可以通过“在事件上”添加触发器并使用关闭的事件ID之一来绕过此问题,但由于上述原因,这可能不是最好的办法。
我建议您使用根据策略定义的关机/注销脚本。这是此类操作的正式方法,并且保证在关机/注销之前完全执行。如果您的Windows版本支持GPO,您可以启动gpedit.msc并转到Computer Configuration\Windows Settings\Scripts for Shutdown and User Configuration\Windows Settings\Scripts for Logoff script并创建您的脚本。详细解释这些脚本的文章可以在here中找到。
如果您的操作系统版本不支持GPO,您应该能够重新创建必要的注册表项。我自己没有尝试过,但severalarticles似乎建议您需要的是:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group
Policy\State\Machine\Scripts]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group
Policy\State\Machine\Scripts\Shutdown]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group
Policy\State\Machine\Scripts\Shutdown\0]
"GPO-ID"="LocalGPO"
"SOM-ID"="Local"
"FileSysPath"="C:\\WINDOWS\\System32\\GroupPolicy\\Machine"
"DisplayName"="Local Group Policy"
"GPOName"="Local Group Policy"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group
Policy\State\Machine\Scripts\Shutdown\0\0]
"Script"="C:\\bin\\shutdownscript.cmd"
"Parameters"=""
"ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

放入一个.reg文件中。唯一需要更改的行是:"Script"="C:\\bin\\shutdownscript.cmd"

8hhllhi2

8hhllhi22#

同时,我已经明白Windows 10没有这个问题:启动计划任务的可能性有:

  • 从用户会话断开时
  • 工作站锁定时

相关问题