struttura CM_NOTIFY_FILTER (cfgmgr32.h)
Struttura del filtro delle notifiche del dispositivo
Sintassi
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;
Members
cbSize
Dimensioni della struttura.
Flags
Combinazione di zero o più flag seguenti:
CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES
Registrarsi per ricevere notifiche per gli eventi PnP per tutte le classi di interfaccia del dispositivo. La memoria in pFilter-u.DeviceInterface.ClassGuid> deve essere zero. Non usare questo flag con CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES. Questo flag è valido solo se pFilter-FilterType> è CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE.
CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES
Registrarsi per ricevere notifiche per gli eventi PnP per tutti i dispositivi. pFilter-u.DeviceInstance.InstanceId> deve essere una stringa vuota. Non usare questo flag con CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES. Questo flag è valido solo se pFilter-FilterType> è CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE.
FilterType
Deve essere uno dei valori seguenti:
CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE
Registrarsi per le notifiche per gli eventi dell'interfaccia del dispositivo. pFilter-u.DeviceInterface.ClassGuid> deve essere compilato con il GUID della classe dell'interfaccia del dispositivo per ricevere le notifiche.
CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE
Registrarsi per le notifiche per gli eventi di gestione dei dispositivi. pFilter-u.DeviceHandle.hTarget> deve essere compilato con un handle per il dispositivo per ricevere notifiche. Questo handle deve rimanere un handle valido per il dispositivo per la durata della chiamata CM_Register_Notification . Tuttavia, dopo che CM_Register_Notification viene restituito, l'handle può essere chiuso senza influire sulla possibilità per la registrazione di ricevere notifiche.
CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE
Registrarsi per le notifiche per gli eventi dell'istanza del dispositivo. pFilter-u.DeviceInstance.InstanceId> deve essere compilato con l'ID istanza del dispositivo per cui ricevere le notifiche.
Reserved
Impostare su 0.
u
Unione che contiene informazioni sul dispositivo per cui ricevere le notifiche.
u.DeviceInterface
u.DeviceInterface.ClassGuid
GUID della classe dell'interfaccia del dispositivo per cui ricevere le notifiche.
u.DeviceHandle
Handle per il dispositivo per cui ricevere notifiche.
u.DeviceHandle.hTarget
u.DeviceInstance
ID istanza del dispositivo per il quale ricevere notifiche.
u.DeviceInstance.InstanceId[MAX_DEVICE_ID_LEN]
Commenti
Quando il driver chiama la funzione CM_Register_Notification , fornisce un puntatore a una struttura CM_NOTIFY_FILTER nel parametro pFilter .
Requisiti
Requisito | Valore |
---|---|
Intestazione | cfgmgr32.h |