Función IoWMIOpenBlock (wdm.h)
La rutina IoWMIOpenBlock abre el objeto de bloque de datos WMI para la clase WMI especificada.
Sintaxis
NTSTATUS IoWMIOpenBlock(
[in] LPCGUID Guid,
[in] ULONG DesiredAccess,
[out] PVOID *DataBlockObject
);
Parámetros
[in] Guid
Especifica el GUID de la clase WMI.
[in] DesiredAccess
Especifica los derechos de acceso deseados para el objeto de bloque de datos. El autor de la llamada debe tener determinados derechos de acceso para realizar determinadas operaciones.
A continuación se muestra una descripción de cada bit correcto de acceso y las operaciones que permite:
WMIGUID_EXECUTE
El objeto de bloque de datos se puede usar para ejecutar métodos de clase WMI. Esta marca debe establecerse para usar IoWMIExecuteMethod en el objeto de bloque de datos.
WMIGUID_NOTIFICATION
El objeto de bloque de datos se puede usar para registrar devoluciones de llamada de notificación de eventos. Esta marca debe establecerse para usar IoWMISetNotificationCallback y solo se puede usar para los bloques de eventos WMI. Los autores de llamadas que especifican esta marca también deben especificar la marca SYNCHRONIZE.
WMIGUID_QUERY
El objeto de bloque de datos se puede usar para consultar las propiedades de la clase WMI. Esta marca debe establecerse para usar cualquiera de las rutinas IoWMIQueryXxx en el objeto de bloque de datos.
WMIGUID_SET
El objeto de bloque de datos se puede usar para establecer propiedades de clase WMI. Esta marca debe establecerse para usar cualquiera de las rutinas IoWMISetXxx en el objeto de bloque de datos.
[out] DataBlockObject
Puntero a una ubicación de memoria donde la rutina devuelve un puntero al objeto de bloque de datos.
Valor devuelto
Devuelve STATUS_SUCCESS si se ejecuta correctamente o el código de error NTSTATUS adecuado en caso de error.
Comentarios
El llamador usa IoWMIOpenBlock para crear un objeto de bloque de datos para el GUID de clase WMI especificado. Posteriormente, el autor de la llamada puede usar el objeto de bloque de datos para leer o escribir propiedades de clase WMI, ejecutar métodos de clase WMI y registrar devoluciones de llamada para eventos WMI.
Use las rutinas IoWMIQueryXxx e IoWMISetXxx para leer y escribir propiedades de clase WMI. Use IoWMIExecuteMethod para ejecutar métodos de clase WMI y use IoWMISetNotificationCallback para registrar una devolución de llamada de notificación de eventos WMI.
Use ObDereferenceObject para cerrar el objeto de bloque de datos una vez que ya no sea necesario.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows XP y versiones posteriores del sistema operativo Windows. |
Plataforma de destino | Universal |
Encabezado | wdm.h (incluya Ntddk.h, Ntifs.h. Los valores de WMIGUID_XXX se declaran en Wmistr.h. Para usarlos, incluya Wmistr.h). |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |