CM_NOTIFY_EVENT_DATA 結構 (cfgmgr32.h)
這是裝置通知事件資料結構。
語法
typedef struct _CM_NOTIFY_EVENT_DATA {
CM_NOTIFY_FILTER_TYPE FilterType;
DWORD Reserved;
union {
struct {
GUID ClassGuid;
WCHAR SymbolicLink[ANYSIZE_ARRAY];
} DeviceInterface;
struct {
GUID EventGuid;
LONG NameOffset;
DWORD DataSize;
BYTE Data[ANYSIZE_ARRAY];
} DeviceHandle;
struct {
WCHAR InstanceId[ANYSIZE_ARRAY];
} DeviceInstance;
} u;
} CM_NOTIFY_EVENT_DATA, *PCM_NOTIFY_EVENT_DATA;
成員
FilterType
產生此通知事件資料的註冊中使用的CM_NOTIFY_FILTER結構CM_NOTIFY_FILTER_TYPE。
Reserved
保留的。 必須是 0。
u
聯集,其中包含通知事件資料的相關資訊。 若要判斷要檢查的聯集成員,請檢查事件資料的 FilterType 。
u.DeviceInterface
當 FilterTypeCM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE時,請檢查聯集的這個部分。
u.DeviceInterface.ClassGuid
通知事件資料所屬裝置介面之裝置介面類別別的 GUID。
u.DeviceInterface.SymbolicLink[ANYSIZE_ARRAY]
通知事件資料所屬裝置介面的符號連結路徑。
u.DeviceHandle
當 FilterTypeCM_NOTIFY_FILTER_TYPE_DEVICEHANDLE且 通知動作 CM_NOTIFY_ACTION_DEVICECUSTOMEVENT時,請檢查聯集的這個部分。
u.DeviceHandle.EventGuid
自訂事件的 GUID。
u.DeviceHandle.NameOffset
選擇性字串緩衝區的位移。 使用量取決於 EventGuid的合約。
u.DeviceHandle.DataSize
可從 資料 成員讀取的位元組數目。
u.DeviceHandle.Data[ANYSIZE_ARRAY]
選擇性的二進位資料。 使用量取決於 EventGuid的合約。
u.DeviceInstance
當 FilterTypeCM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE時,請檢查聯集的這個部分。
u.DeviceInstance.InstanceId[ANYSIZE_ARRAY]
通知事件資料所屬裝置的裝置實例識別碼。
備註
提供給CM_Register_Notification的通知回呼會接收回呼的 EventData參數中類型CM_NOTIFY_EVENT_DATA結構的指標。
規格需求
標頭 | cfgmgr32.h |