estructura CM_NOTIFY_FILTER (cfgmgr32.h)

Estructura del filtro de notificación de dispositivo

Sintaxis

typedef struct _CM_NOTIFY_FILTER {
  DWORD                 cbSize;
  DWORD                 Flags;
  CM_NOTIFY_FILTER_TYPE FilterType;
  DWORD                 Reserved;
  union {
    struct {
      GUID ClassGuid;
    } DeviceInterface;
    struct {
      HANDLE hTarget;
    } DeviceHandle;
    struct {
      WCHAR InstanceId[MAX_DEVICE_ID_LEN];
    } DeviceInstance;
  } u;
} CM_NOTIFY_FILTER, *PCM_NOTIFY_FILTER;

Miembros

cbSize

Tamaño de la estructura.

Flags

Combinación de cero o más de las marcas siguientes:

CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES

Regístrese para recibir notificaciones de eventos PnP para todas las clases de interfaz de dispositivo. La memoria de pFilter-u.DeviceInterface.ClassGuid> debe ser ceros. No use esta marca con CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES. Esta marca solo es válida si pFilter-FilterType> es CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE.

CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES

Regístrese para recibir notificaciones de eventos PnP para todos los dispositivos. pFilter-u.DeviceInstance.InstanceId> debe ser una cadena vacía. No use esta marca con CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES. Esta marca solo es válida si pFilter-FilterType> es CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE.

FilterType

Debe ser uno de los siguientes valores:

CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE

Regístrese para recibir notificaciones para eventos de interfaz de dispositivo. pFilter-u.DeviceInterface.ClassGuid> debe rellenarse con el GUID de la clase de interfaz de dispositivo para recibir notificaciones.

CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE

Regístrese para recibir notificaciones para eventos de identificador de dispositivo. pFilter-u.DeviceHandle.hTarget> debe rellenarse con un identificador para el dispositivo para recibir notificaciones. Este identificador debe seguir siendo un identificador válido para el dispositivo mientras dure la llamada CM_Register_Notification . Sin embargo, después de que CM_Register_Notification devuelva, el identificador se puede cerrar sin afectar a la capacidad de que el registro reciba notificaciones.

CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE

Regístrese para recibir notificaciones para eventos de instancia de dispositivo. pFilter-u.DeviceInstance.InstanceId> debe rellenarse con el identificador de instancia de dispositivo del dispositivo para el que se van a recibir notificaciones.

Reserved

Establecer en 0.

u

Unión que contiene información sobre el dispositivo para el que se van a recibir notificaciones.

u.DeviceInterface

u.DeviceInterface.ClassGuid

GUID de la clase de interfaz de dispositivo para la que se van a recibir notificaciones.

u.DeviceHandle

Identificador del dispositivo para el que se van a recibir notificaciones.

u.DeviceHandle.hTarget

u.DeviceInstance

Identificador de instancia del dispositivo para el que se van a recibir notificaciones.

u.DeviceInstance.InstanceId[MAX_DEVICE_ID_LEN]

Comentarios

Cuando el controlador llama a la función CM_Register_Notification , proporciona un puntero a una estructura CM_NOTIFY_FILTER en el parámetro pFilter .

Requisitos

Requisito Valor
Header cfgmgr32.h

Consulte también

CM_NOTIFY_ACTION

CM_Register_Notification