Função IoWMISetSingleInstance (wdm.h)
A rotina IoWMISetSingleInstance define os valores das propriedades dentro da instância do bloco de dados que corresponde à classe WMI especificada e ao nome da instância.
Sintaxe
NTSTATUS IoWMISetSingleInstance(
[in] PVOID DataBlockObject,
[in] PUNICODE_STRING InstanceName,
[in] ULONG Version,
[in] ULONG ValueBufferSize,
[in] PVOID ValueBuffer
);
Parâmetros
[in] DataBlockObject
Ponteiro para um objeto de bloco de dados WMI. O chamador abre o objeto de bloco de dados para a classe WMI com a rotina IoWMIOpenBlock . O objeto deve ser aberto com o direito de acesso WMIGUID_SET.
[in] InstanceName
Especifica o nome da instância do bloco de dados. Esse valor corresponde ao valor da propriedade InstanceName do bloco.
[in] Version
Reservado para uso futuro. Os chamadores devem definir esse parâmetro como zero.
[in] ValueBufferSize
Especifica o tamanho, em bytes, do buffer passado no parâmetro ValueBuffer .
[in] ValueBuffer
Ponteiro para o buffer que contém os novos valores para as propriedades dentro do bloco de dados.
Retornar valor
A rotina retorna um código NTSTATUS. Os possíveis valores retornados incluem:
Código de retorno | Descrição |
---|---|
|
A operação foi realizada com êxito. Os valores das propriedades da instância do bloco de dados WMI são atualizados para o conteúdo do buffer apontado pelo parâmetro ValueBuffer . |
|
Nenhum driver implementa a classe WMI. |
|
Nenhum driver implementa uma instância da classe WMI com a propriedade InstanceName igual ao valor especificado no parâmetro InstanceName . |
|
Todas as propriedades da classe WMI são somente leitura. |
|
O driver que implementa a instância do bloco de dados WMI não pode atualizar a instância. |
Comentários
IoWMISetSingleInstance determina quais drivers podem dar suporte à classe WMI especificada e ao nome da instância e emite uma solicitação de IRP_MN_CHANGE_SINGLE_INSTANCE para cada driver. O driver que exporta a instância do bloco de dados com a propriedade InstanceName correspondente atualiza sua instância de bloco de dados. Observe que um bloco de dados pode ter propriedades somente leitura e leitura/gravação. Nesse caso, somente as propriedades de leitura/gravação serão atualizadas e STATUS_SUCCESS será retornado.
Os drivers também podem usar a rotina IoWMISetSingleItem para atualizar uma única propriedade dentro da instância de classe.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows XP e versões posteriores do sistema operacional Windows. |
Plataforma de Destino | Universal |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |