关闭Windows时如何安排任务运行


86

关闭Windows时,如何计划Windows XP中的任务运行。这样,每次关闭Windows时,我都想运行一个用C#编写的简单命令行程序。当我的计算机关闭时,计划任务中似乎没有执行该任务的选项。

Answers:


92

执行gpedit.msc(本地策略)

计算机配置-> Windows设置->脚本->关机->属性->添加


28
如果您希望批处理脚本在注销时运行,我发现直接引用.bat文件是行不通的。但是,如果我用C:\Windows\System32\cmd.exe脚本名称,并/C C:\path\to\batch\script.bat作为脚本参数,它做到了。
丹·史蒂文斯

6
警告:使用快速启动时(Windows 8及更高版本中默认启用),未执行组策略启动和关闭Scips。在这种情况下,只有重新启动或强制关闭(从命令提示符)才能真正关闭计算机。在所有其他情况下(“开始”菜单关闭),计算机内核进入休眠状态,并在启动时重新显示,并且GPO启动和关闭程序均被忽略。
voji

@voji:Windows Server也是如此吗?
sampathsris

如何重启?
dangalg

这些似乎根本无法在Server Core 1909上运行
戈迪

40

除了Dan Williams的答案之外,如果要添加启动/关闭脚本,还需要在“计算机配置”下查找Windows设置。如果要添加登录/注销脚本,则需要在“用户配置”下查找Windows设置。

因此,为了重申Dan在包含此信息时所说的话,

对于启动/关闭:

  1. 运行gpedit.msc(本地策略)
  2. 计算机配置-> Windows设置->脚本->启动关闭->属性->添加

对于登录/注销:

  1. 运行gpedit.msc(本地策略)
  2. 用户配置-> Windows设置->脚本->登录注销->属性->添加

来源:http//technet.microsoft.com/en-us/library/cc739591(WS.10).aspx


2
这是更好的答案。当您打开GPEditor时,它将显示您所描述的两个节点。由于两个节点都有Windows设置选项,因此接受的答案比您的答案不清楚。谢谢你的提示。很有帮助。
塞斯·斯皮尔曼

34

对于那些喜欢使用任务计划程序的用户,可以通过在记录事件查看器的系统日志中的事件1074之后将任务设置为运行,从而将任务计划为在启动重新启动/关机之后运行。但是,这仅适用于非常短的任务,只要系统重新启动/关闭,该任务就会运行,通常只有几秒钟。

  • 从任务计划程序:

    开始任务:在事件
    日志上:系统
    源:USER32事件
    ID:1074

  • 在命令提示符下:

    schtasks / create / tn“任务名称” / tr“任务文件” / sc onevent / ec系统/ mo * [system / eventid = 1074]

注释:/ ec选项在Windows Vista及更高版本中可用。(谢谢@ t2d)

请注意,任务状态可以是:

由于用户尚未登录网络,因此未执行所请求的操作。指定的服务不存在。(0x800704DD)

但是,这并不意味着它没有运行。


谢谢你的提示!@Oz,它将在重新启动以及关闭时运行吗?我要介绍的情况是Windows Update强制重新启动...
Erik Eidt 2015年

是的,是的,因为此事件在重新启动/关闭时记录。
奥兹·埃德里

请注意,该参数/ec system不存在,但称为/ru system。请参阅support.microsoft.com/en-us/kb/814596#bookmark-4
t2d

@ t2d,虽然/ ec在较新的版本中存在,但/ ru指的是完全不同的东西。EC允许您指定事件通道,而ru允许您以其他用户身份运行。尽管如此,仍然感谢您的评论。我将相应地编辑我的帖子。
奥兹·埃德里

1
您的示例中的修饰符中有一个错字。应该是... /mo *[system/eventid=1074],不是.../mo *[system/evendid=1074]
testworks

4

一种解决方法是编写一个简单的批处理文件以运行程序,然后关闭计算机。

您可以从命令行关闭-这样您的脚本可能非常简单:

c:\directory\myProgram.exe
C:\WINDOWS\system32\shutdown.exe -s -f -t 0

4

如果运行GPEdit.MSC,则可以转到“计算机配置”->“ Windows设置”->“脚本”,然后添加启动/关机脚本。这些可以是简单的批处理文件,甚至是完整的EXE。您也可以在同一工具中为登录和注销脚本调整用户配置。该工具在Windows XP Home中不可用。




1

我可以建议您做的是创建.bat文件的快捷方式(例如在您的桌面上),然后在您要关闭计算机(并运行.bat文件)时单击创建的快捷方式。完成此操作后,编辑.bat文件,并将此代码行添加到末尾或需要的地方:

c:\windows\system32\shutdown -s -f -t 00

这是什么

  1. 运行关机过程
  2. 显示警报
  3. 强制所有正在运行的进程停止
  4. 立即执行

1

在Windows 10 Pro上,可以注册批处理文件。不需要注册cmd.exe并将bat文件指定为参数的解决方法。我只是这样做,同时注册了一个关闭脚本和一个启动(引导)脚本,并且它起作用了。


0

我还必须启用“为组策略脚本指定最大等待时间”和“在关机脚本运行时显示说明”,以使其对我有用,正如我在此处说明的。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.