SERVICE_TRIGGER_SPECIFIC_DATA_ITEM 结构 (winsvc.h)
包含服务触发器事件的特定于触发器的数据。 此结构由 SERVICE_TRIGGER 结构用于SERVICE_TRIGGER_TYPE_CUSTOM、SERVICE_TRIGGER_TYPE_DEVICE_ARRIVAL、SERVICE_TRIGGER_TYPE_FIREWALL_PORT_EVENT或SERVICE_TRIGGER_TYPE_NETWORK_ENDPOINT触发器事件。
语法
typedef struct _SERVICE_TRIGGER_SPECIFIC_DATA_ITEM {
DWORD dwDataType;
DWORD cbData;
PBYTE pData;
} SERVICE_TRIGGER_SPECIFIC_DATA_ITEM, *PSERVICE_TRIGGER_SPECIFIC_DATA_ITEM;
成员
dwDataType
pData 指向的触发器特定数据的数据类型。 此成员可以是以下值之一。
cbData
指向 pData 的特定于触发器的数据的大小(以字节为单位)。 最大值为 1024。
pData
指向服务触发器事件的触发器特定数据的指针。 特定于触发器的数据取决于触发器事件类型;请参阅备注。
如果 dwDataType 成员SERVICE_TRIGGER_DATA_TYPE_BINARY,则特定于触发器的数据是字节数组。
如果 dwDataType 成员SERVICE_TRIGGER_DATA_TYPE_STRING,则特定于触发器的数据是以 null 结尾的字符串或以 null 结尾的字符串的多字符串,以两个 null 终止字符结尾。 例如:"5001\0UDP\0%programfiles%\MyApplication\MyServiceProcess.exe\0MyService\0\0"
。
字符串必须为 Unicode;不支持 ANSI 字符串。
注解
下表按触发器事件类型列出了特定于触发器的数据。
事件类型 | 特定于触发器的数据 |
---|---|
SERVICE_TRIGGER_TYPE_CUSTOM | 由定义自定义 事件的 Windows 事件跟踪 (ETW) 提供程序指定。 |
SERVICE_TRIGGER_TYPE_DEVICE_INTERFACE_ARRIVAL | SERVICE_TRIGGER_DATA_TYPE_STRING字符串,指定设备接口类的硬件 ID 或兼容 ID 字符串。 |
SERVICE_TRIGGER_TYPE_DOMAIN_JOIN | 不适用。 |
SERVICE_TRIGGER_TYPE_FIREWALL_PORT_EVENT | SERVICE_TRIGGER_DATA_TYPE_STRING多字符串,用于指定侦听事件的服务的端口、协议以及可执行路径和名称(可选)。 |
SERVICE_TRIGGER_TYPE_GROUP_POLICY | 不适用。 |
SERVICE_TRIGGER_TYPE_IP_ADDRESS_AVAILABILITY | 不适用。 |
SERVICE_TRIGGER_TYPE_NETWORK_ENDPOINT | 指定网络终结点的端口、命名管道或 RPC 接口的SERVICE_TRIGGER_DATA_TYPE_STRING。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
标头 | winsvc.h |