配置触发器有条件启动Windows服务

2021-03-24 11:29樱子
电脑爱好者 2021年6期
关键词:窗格触发器对话框

樱子

1.Windows服务触发器的来历

我们知道,Windows服务在何时运行通常有两种选择:计算机启动时启动(“自动”),或仅在用户或程序明确需要启动时运行(“手动”)。启动了的服务往往会一直在后台运行并占用宝贵的系统资源,只有在需要发生作用时才能派上用场。为了改善这种情况,早在Windows 7和Windows Server 2008 R2时期,微软就明智地将“事件机制”直接集成到了Windows服务体系结构中,它可以在满足某些条件时才启动或停止Windows服务,这样服务触发器就诞生了。

2.触发器可在什么情况下启动或停止服务

常见的使用服务触发器的情况有:

·设备接入时或在系统启动时设备就已经存在;

·计算机加入或离开一个域;

·防火墙端口打开或关闭;

·计算机策略或用户策略更改;

·TCP/IP网络堆栈上的第一个IP地址变为可用,或堆栈上的最后一个IP地址变为不可用;

·发生自定义事件或系统状态更改

我们使用服务触发器的情况可能不限于上述所列条目,Windows 8附带47个触发器功能,而Windows 10则至少有75个这方面的功能。服务触发器在Windows中的使用一直在稳步增长。毫无疑问,微软将在未来的Windows版本中还会添加更多其他有用的触发器。

3.用Service Trigger Editor管理服务触发器

要用服务触发器启动或停止服务,我们可以利用Service Trigger Editor免费实用程序来完成。该程序不需要安装,下载可执行文件并双击它即可启动该程序(下载地址:ht tps://www.coretechnologies.com/products/ServiceTriggerEditor/)。

当Service Trigger Editor启动时,我们将会看到主窗口上部的窗格中显示安装在电脑中的所有服务。运行的服务将在其左侧有一个绿色圆圈,而具有触发器的服务将以蓝色拼图(触发器的符号)为特征(图1)。

点击“Service”(服务)菜单,我们可以启动或停止服务。从“View”(查看)菜单中选择“Only Ser vicesWith Triggers”,则可以隐藏没有触发器的服务。

屏幕的底部的窗格显示所选服务的触发器(如果有的话)。其中Descr iption一栏显示触发器的描述信息,Additional Details则显示附加的描述信息。

我们可以使用“Trigger”菜单添加、编辑或删除触发器。

如果要为服务添加新触发器,依次点击菜单“Trigger→Add...”进行添加。随后会呼出“ AddTri gger”(添加触发器)对话框,在左右两个选择框中分别指定要执行的操作和将触发该操作的事件。例如,选择“Start the service whenThe computer joins a domain”表示当计算机加入域时启动服务(图2)。

一些触发器事件具有特殊的配置,除了选择类型外,还需要输入额外的数据。例如,当我们选择了“Aspecificdevicearrives”(特定设备已连接),还需要选择相应的设备,在下拉列表中就包含所有可供选择的设备(图3)。如果需要,还可以输入自己的GUID来指定,格式如:{53f56307-b6bf-11d0-94f2-00a0c91efb8b}。注意GUID输入要用大括号括起来(下同)。另外,如下的几个主要的常见事件类型也需要输入额外的数据。

Afirewallportisopened/closed(防火墙端口已打开/关闭):必须输入一个或多个要监视的端口。根据Microsoft的技术文档,数据应使用此格式(某些部分是可选的):;;;。

Acustom event occurs(发生自定义事件):必须输入事件提供程序的GUID。

Apacket/requestarrivesonanetworkprotocol(网络协议数据包/请求到达):必须选择网络协议(或输入未列出的协议的GUID)以及端点或接口GUID。注意:此事件仅在Windows8或WindowsServer2012及更高版本上可用。

Acustomsystemstatechangeoccurs(發生自定义系统状态更改):必须输入事件提供程序的GUID。同样,此事件仅在Windows8或WindowsServer2012及更高版本上可用。

当我们希望对现有的触发器进行编辑或查看时,只需在主窗口底部的窗格中点选该触发器,然后从“Trigger”菜单中选择“Edit/View…”,即可打开“Edit/ViewTrigger”对话框进行设置,它实际上与添加触发器的对话框相同(图4)。

如果需要删除现有的触发器,先在主窗口下部的窗格中选择该触发器,然后依次选择“Trigger→Remove”菜单命令,系统将要求确认删除,确认后将从列表中删除触发器。我们也可以从“Trigger”菜单中选择“Removeall”删除所选服务的所有触发器。上述操作也可以通过右键菜单命令来执行(图5)。

猜你喜欢
窗格触发器对话框
正常恢复虚拟机
古典艺术审美——闽南古厝特色窗格
主从JK触发器逻辑功能分析
使用触发器,强化安全性
对触发器逻辑功能转换的分析
触发器逻辑功能转换的两种方法
显示或隐藏“大纲”或“幻灯片”选项卡