Fonction IoWMIOpenBlock (wdm.h)
La routine IoWMIOpenBlock ouvre l’objet de bloc de données WMI pour la classe WMI spécifiée.
Syntaxe
NTSTATUS IoWMIOpenBlock(
[in] LPCGUID Guid,
[in] ULONG DesiredAccess,
[out] PVOID *DataBlockObject
);
Paramètres
[in] Guid
Spécifie le GUID de la classe WMI.
[in] DesiredAccess
Spécifie les droits d’accès souhaités à l’objet de bloc de données. L’appelant doit disposer de droits d’accès particuliers pour effectuer certaines opérations.
Voici une description de chaque bit droit d’accès et des opérations qu’il autorise :
WMIGUID_EXECUTE
L’objet de bloc de données peut être utilisé pour exécuter des méthodes de classe WMI. Cet indicateur doit être défini pour utiliser IoWMIExecuteMethod sur l’objet de bloc de données.
WMIGUID_NOTIFICATION
L’objet de bloc de données peut être utilisé pour inscrire des rappels de notification d’événement. Cet indicateur doit être défini pour utiliser IoWMISetNotificationCallback et ne peut être utilisé que pour les blocs d’événements WMI. Les appelants qui spécifient cet indicateur doivent également spécifier l’indicateur SYNCHRONIZE.
WMIGUID_QUERY
L’objet de bloc de données peut être utilisé pour interroger les propriétés de la classe WMI. Cet indicateur doit être défini pour utiliser l’une des routines IoWMIQueryXxx sur l’objet de bloc de données.
WMIGUID_SET
L’objet de bloc de données peut être utilisé pour définir les propriétés de la classe WMI. Cet indicateur doit être défini pour utiliser l’une des routines IoWMISetXxx sur l’objet de bloc de données.
[out] DataBlockObject
Pointeur vers un emplacement de mémoire où la routine retourne un pointeur vers l’objet de bloc de données.
Valeur retournée
Retourne STATUS_SUCCESS en cas de réussite ou le code d’erreur NTSTATUS approprié en cas d’échec.
Remarques
L’appelant utilise IoWMIOpenBlock pour créer un objet de bloc de données pour le GUID de classe WMI spécifié. Par la suite, l’appelant peut utiliser l’objet de bloc de données pour lire ou écrire des propriétés de classe WMI, exécuter des méthodes de classe WMI et inscrire des rappels pour les événements WMI.
Utilisez les routines IoWMIQueryXxx et IoWMISetXxx pour lire et écrire des propriétés de classe WMI. Utilisez IoWMIExecuteMethod pour exécuter des méthodes de classe WMI et utilisez IoWMISetNotificationCallback pour inscrire un rappel de notification d’événement WMI.
Utilisez ObDereferenceObject pour fermer l’objet de bloc de données une fois qu’il n’est plus nécessaire.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows XP et versions ultérieures du système d’exploitation Windows. |
Plateforme cible | Universal |
En-tête | wdm.h (inclure Ntddk.h, Ntifs.h. Les valeurs WMIGUID_XXX sont déclarées dans Wmistr.h. Pour les utiliser, incluez Wmistr.h.) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |