CM_NOTIFY_FILTER 是 Windows 操作系统中的一个结构体,属于 Win32 配置管理器 API。这个结构体定义了配置管理器通知的筛选条件。以下是该结构体的定义:
typedef struct _CM_NOTIFY_FILTER {
  DWORD cbSize;
  DWORD Flags;
  DEVINST DevInst;
  DEVINST DevInstParent;
  ULONG  EventFilter;
  ULONG  ClassFilter;
  ULONG  Reserved;
  GUID   InstanceId;
  LPARAM lParam;
  ULONG  Alias;
  INTERFACE_TYPE InterfaceType;
  ULONG  Reserved2;
} CM_NOTIFY_FILTER, *PCM_NOTIFY_FILTER;

下面是对各个字段的简要说明:

  •  cbSize: 结构体的大小,以字节为单位。

  •  Flags: 标志位,用于指定通知的类型。

  •  DevInst: 设备实例的句柄,表示要监视的设备。

  •  DevInstParent: 父设备实例的句柄,表示要监视的设备的父设备。

  •  EventFilter: 事件筛选条件,指定在发生什么类型的事件时发出通知。

  •  ClassFilter: 类别筛选条件,指定在设备类别匹配时发出通知。

  •  Reserved: 保留字段。

  •  InstanceId: 设备实例的 GUID 标识符。

  •  lParam: 用户自定义参数,将在通知消息中传递。

  •  Alias: 别名。

  •  InterfaceType: 设备接口类型。

  •  Reserved2: 保留字段。


这个结构体主要用于设置配置管理器通知的筛选条件,以便在特定事件或设备状态变化时收到通知。在使用时,通常会先初始化这个结构体,然后传递给相关的配置管理器 API 函数,以便开始或结束通知。


转载请注明出处:http://www.zyzy.cn/article/detail/24365/Win32 API/Cfgmgr32.h/CM_NOTIFY_FILTER