Поделиться через


структура 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_TYPE из структуры CM_NOTIFY_FILTER, которая использовалась в регистрации, создающей данные события уведомления.

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

Количество байтов, которые можно считать из элемента Data .

u.DeviceHandle.Data[ANYSIZE_ARRAY]

Необязательные двоичные данные. Использование зависит от контракта для EventGuid.

u.DeviceInstance

Изучите эту часть объединения, если параметр FilterTypeCM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE.

u.DeviceInstance.InstanceId[ANYSIZE_ARRAY]

Идентификатор экземпляра устройства, к которому относятся данные события уведомления.

Комментарии

Обратный вызов уведомления, предоставленный CM_Register_Notification , получает указатель на структуру типа CM_NOTIFY_EVENT_DATA в параметре EventData обратного вызова.

Требования

   
Верхняя часть cfgmgr32.h

См. также раздел

CM_Register_Notification