다음을 통해 공유


CM_NOTIFY_FILTER 구조체(cfgmgr32.h)

디바이스 알림 필터 구조

구문

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;

멤버

cbSize

구조체의 크기입니다.

Flags

다음 플래그 중 0개 이상의 조합입니다.

CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES

등록하여 모든 디바이스 인터페이스 클래스에 대한 PnP 이벤트에 대한 알림을 받습니다. pFilter-u.DeviceInterface.ClassGuid>의 메모리는 0이어야 합니다. CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES 이 플래그를 사용하지 마세요. 이 플래그는 pFilter-FilterType>이 CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE 경우에만 유효합니다.

CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES

등록하여 모든 디바이스에 대한 PnP 이벤트에 대한 알림을 받습니다. pFilter-u.DeviceInstance.InstanceId>는 빈 문자열이어야 합니다. CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES 이 플래그를 사용하지 마세요. 이 플래그는 pFilter-FilterType>이 CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE 경우에만 유효합니다.

FilterType

다음 값 중 하나여야 합니다.

CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE

디바이스 인터페이스 이벤트에 대한 알림을 등록합니다. pFilter-u.DeviceInterface.ClassGuid>는 알림을 받을 디바이스 인터페이스 클래스의 GUID로 채워져야 합니다.

CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE

디바이스 핸들 이벤트에 대한 알림을 등록합니다. 알림을 받으려면 pFilter-u.DeviceHandle.hTarget>을 디바이스에 대한 핸들로 채워야 합니다. 이 핸들은 CM_Register_Notification 호출 기간 동안 디바이스에 대한 유효한 핸들로 유지되어야 합니다. 그러나 CM_Register_Notification 반환된 후에는 등록에서 알림을 받을 수 있는 기능에 영향을 주지 않고 핸들을 닫을 수 있습니다.

CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE

디바이스 instance 이벤트에 대한 알림을 등록합니다. pFilter-u.DeviceInstance.InstanceId>는 알림을 받을 디바이스의 디바이스 instance ID로 채워져야 합니다.

Reserved

0으로 설정합니다.

u

알림을 받을 디바이스에 대한 정보를 포함하는 공용 구조체입니다.

u.DeviceInterface

u.DeviceInterface.ClassGuid

알림을 받을 디바이스 인터페이스 클래스의 GUID입니다.

u.DeviceHandle

알림을 받을 디바이스에 대한 핸들입니다.

u.DeviceHandle.hTarget

u.DeviceInstance

디바이스는 알림을 받을 디바이스의 ID를 instance.

u.DeviceInstance.InstanceId[MAX_DEVICE_ID_LEN]

설명

드라이버는 CM_Register_Notification 함수를 호출할 때 pFilter 매개 변수의 CM_NOTIFY_FILTER 구조체에 대한 포인터를 제공합니다.

요구 사항

요구 사항
헤더 cfgmgr32.h

추가 정보

CM_NOTIFY_ACTION

CM_Register_Notification