Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La struttura WMIGUIDREGINFO contiene informazioni di registrazione per un determinato blocco di dati o blocco di eventi esposto da un driver che utilizza le routine di supporto della libreria WMI.
Sintassi
typedef struct _WMIGUIDREGINFO {
LPCGUID Guid;
ULONG InstanceCount;
ULONG Flags;
} WMIGUIDREGINFO, *PWMIGUIDREGINFO;
Membri
Guid
Puntatore al GUID che identifica il blocco. La memoria che contiene il GUID può essere usata anche per chiamare WmiFireEvent.
InstanceCount
Specifica il numero di istanze definite per il blocco.
Flags
Flag bit che indicano le caratteristiche del blocco. Questi bit di flag sono definiti nel file di intestazione Wmistr.h. OR WMI il Flags valore del parametro con i bit flag impostati dal driver nel RegFlags parametro del relativo DpWmiQueryReginfo routine, che si applicano a tutti i blocchi di dati e i blocchi eventi registrati dal driver. Flag quindi integra le impostazioni predefinite del driver per un determinato blocco.
Un driver potrebbe impostare il bit del flag seguente in Flag:
WMIREG_FLAG_INSTANCE_PDO
Richiede a WMI di generare nomi di istanza statici dall'ID istanza del dispositivo per il PDO. Se questo flag è impostato, il parametro Pdo del driver DpWmiQueryReginfo punta al PDO passato alla routine addDevice del driver. WMI genera nomi di istanza dal percorso dell'istanza del dispositivo del PDO. L'uso del percorso dell'istanza del dispositivo come base per i nomi di istanza statici è efficiente perché tali nomi sono sicuramente univoci. WMI fornisce automaticamente un nome "descrittivo" per l'istanza come elemento in un blocco di dati su cui è possibile eseguire query da parte dei consumer di dati.
Un driver può anche impostare uno o più dei bit di flag seguenti:
WMIREG_FLAG_EVENT_ONLY_GUID
Il blocco può essere abilitato o disabilitato solo come evento e non può essere sottoposto a query o set. Se questo flag è deselezionato, è anche possibile eseguire query o impostare il blocco.
WMIREG_FLAG_EXPENSIVE
Richiede a WMI di inviare una richiesta di IRP_MN_ENABLE_COLLECTION la prima volta che un consumer di dati apre il blocco di dati e una richiesta di IRP_MN_DISABLE_COLLECTION quando l'ultimo consumer di dati chiude il blocco di dati. Questa operazione è consigliata se la raccolta di tali dati influisce sulle prestazioni, perché un driver non deve raccogliere i dati fino a quando un consumer di dati non lo richiede esplicitamente aprendo il blocco.
WMIREG_FLAG_REMOVE_GUID
Richiede a WMI di rimuovere il supporto per questo blocco. Questo flag è valido solo in risposta a una richiesta di aggiornamento delle informazioni di registrazione (IRP_MN_REGINFO o IRP_MN_REGINFO_EX con Parameters.WMI.DataPath impostato su WMIUPDATE).
Osservazioni
Un driver che gestisce i runtime di integrazione WMI chiamando le routine di supporto della libreria WMI compila una matrice di strutture WMIGUIDREGINFO, una per ogni blocco di dati e blocco eventi da registrare. Il driver imposta il membro GuidList della struttura WMILIB_CONTEXT in modo che punti al primo WMIGUIDREGINFO della serie.
La memoria per questa struttura può essere allocata dal pool di paging.
Fabbisogno
| Requisito | Valore |
|---|---|
| intestazione | wmilib.h (include Wmilib.h) |