Función IoWMISetSingleInstance (wdm.h)
La rutina IoWMISetSingleInstance establece los valores de las propiedades de la instancia de bloque de datos que coincide con el nombre de instancia y la clase WMI especificados.
Sintaxis
NTSTATUS IoWMISetSingleInstance(
[in] PVOID DataBlockObject,
[in] PUNICODE_STRING InstanceName,
[in] ULONG Version,
[in] ULONG ValueBufferSize,
[in] PVOID ValueBuffer
);
Parámetros
[in] DataBlockObject
Puntero a un objeto de bloque de datos WMI. El autor de la llamada abre el objeto de bloque de datos para la clase WMI con la rutina IoWMIOpenBlock . El objeto debe abrirse con el derecho de acceso WMIGUID_SET.
[in] InstanceName
Especifica el nombre de la instancia del bloque de datos. Este valor corresponde al valor de la propiedad InstanceName del bloque.
[in] Version
Reservado para uso futuro. Los autores de llamadas deben establecer este parámetro en cero.
[in] ValueBufferSize
Especifica el tamaño, en bytes, del búfer pasado en el parámetro ValueBuffer .
[in] ValueBuffer
Puntero al búfer que contiene los nuevos valores de las propiedades dentro del bloque de datos.
Valor devuelto
La rutina devuelve un código NTSTATUS. Entre los valores devueltos posibles se incluyen:
Código devuelto | Descripción |
---|---|
|
La operación se realizó correctamente. Los valores de las propiedades de instancia del bloque de datos WMI se actualizan al contenido del búfer al que apunta el parámetro ValueBuffer . |
|
Ningún controlador implementa la clase WMI. |
|
Ningún controlador implementa una instancia de la clase WMI con la propiedad InstanceName igual al valor especificado en el parámetro InstanceName . |
|
Todas las propiedades de la clase WMI son de solo lectura. |
|
El controlador que implementa la instancia del bloque de datos WMI no puede actualizar la instancia. |
Comentarios
IoWMISetSingleInstance determina qué controladores pueden admitir la clase WMI y el nombre de instancia especificados, y emite una solicitud de IRP_MN_CHANGE_SINGLE_INSTANCE a cada controlador de este tipo. El controlador que exporta la instancia del bloque de datos con la propiedad InstanceName coincidente actualiza su instancia de bloque de datos. Tenga en cuenta que un bloque de datos puede tener propiedades de solo lectura y de lectura y escritura. En este caso, solo se actualizarán las propiedades de lectura y escritura y se devolverá STATUS_SUCCESS.
Los controladores también pueden usar la rutina IoWMISetSingleItem para actualizar una sola propiedad dentro de la instancia de clase.
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 Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |