共用方式為


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 所指向之觸發程式特定數據的數據類型。 這個成員可以是下列其中一個值。

意義
SERVICE_TRIGGER_DATA_TYPE_BINARY
1
觸發程式特定的數據格式為二進位格式。
SERVICE_TRIGGER_DATA_TYPE_STRING
2
觸發程式特定的數據是字串格式。
SERVICE_TRIGGER_DATA_TYPE_LEVEL
3
觸發程式特定的數據是位元組值。
SERVICE_TRIGGER_DATA_TYPE_KEYWORD_ANY
4
觸發程式特定的數據是 64 位無符號整數值。
SERVICE_TRIGGER_DATA_TYPE_KEYWORD_ALL
5
觸發程式特定的數據是 64 位無符號整數值。

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字串,指定裝置介面類別的硬體識別碼或相容標識符字串。
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 SERVICE_TRIGGER_DATA_TYPE_STRING,指定網路端點的埠、命名管道或 RPC 介面。

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
標頭 winsvc.h

另請參閱

ChangeServiceConfig2

QueryServiceConfig2

SERVICE_TRIGGER

服務觸發程式事件