IOCTL_PMI_GET_CONFIGURATION IOCTL (pmi.h)
A solicitação IOCTL_PMI_GET_CONFIGURATION retorna informações sobre a configuração atual de um medidor de energia.
Código principal
Buffer de entrada
O membro AssociatedIrp.SystemBuffer do IRP (pacote de solicitação de E/S) aponta para um buffer alocado pelo iniciador que é usado como o buffer de entrada e o buffer de saída para a solicitação. Na entrada, esse buffer contém uma estrutura PMI_CONFIGURATION na qual os membros Version e ConfigurationType são definidos como valores válidos. O membro ConfigurationType contém um valor de enumeração PMI_CONFIGURATION_TYPE que especifica o tipo de informações de configuração a serem recuperadas do medidor de energia. Esse valor também determina o tipo de informações de configuração a serem gravadas no buffer de saída.
Comprimento do buffer de entrada
O membro Parameters.DeviceIoControl.InputBufferLength do local da pilha de E/S atual do IRP (IO_STACK_LOCATION) é definido como o tamanho em bytes do buffer apontado pelo membro AssociatedIrp.SystemBuffer . Esse tamanho deve ser maior ou igual a sizeof(PMI_CONFIGURATION) ou a solicitação falhará com um erro status de STATUS_INVALID_PARAMETER.
Buffer de saída
Se a solicitação for concluída com êxito, o buffer apontado pelo membro AssociatedIrp.SystemBuffer conterá uma estrutura PMI_CONFIGURATION . Essa estrutura contém as informações de configuração solicitadas.
Comprimento do buffer de saída
O membro Parameters.DeviceIoControl.OutputBufferLength do local da pilha de E/S atual do IRP é definido como o tamanho em bytes do buffer apontado pelo membro AssociatedIrp.SystemBuffer . Para que a solicitação seja bem-sucedida, esse tamanho deve ser maior ou igual a sizeof(PMI_CONFIGURATION). Caso contrário, a solicitação falhará com um erro status de STATUS_BUFFER_TOO_SMALL.
Bloco de status
O membro Information é definido como o tamanho, em bytes, de uma estrutura PMI_CONFIGURATION .
O membro Status é definido como um dos seguintes valores:
STATUS_BUFFER_TOO_SMALL
O membro Parameters.DeviceIoControl.OutputBufferLength do IRP é menor que o tamanho, em bytes, de uma estrutura PMI_CONFIGURATION .
STATUS_INVALID_PARAMETER
O buffer de entrada alocado pelo iniciador contém um valor de PMI_CONFIGURATION_TYPE inválido.
STATUS_SUCCESS
O driver WDM que dá suporte à interface PMI concluiu a solicitação IOCTL com êxito.
Comentários
O IOCTL_PMI_GET_CONFIGURATION solicitação consulta a configuração atual do medidor de energia. O valor de enumeração de PMI_CONFIGURATION_TYPE de entrada especifica o tipo de dados de configuração a serem retornados. O tipo de dados e o conteúdo do buffer de saída variam de acordo com os dados solicitados.
A tabela a seguir descreve o tipo de dados retornados para o valor de enumeração PMI_CONFIGURATION_TYPE especificado.
PMI_CONFIGURATION_TYPE valor | Descrição |
---|---|
PmiBudgetingConfiguration | Uma estrutura PMI_BUDGETING_CONFIGURATION que contém informações sobre a configuração de orçamento do medidor de energia. |
PmiMeasurementConfiguration | Uma estrutura PMI_MEASUREMENT_CONFIGURATION que contém informações sobre a configuração de medida do medidor de energia. |
PmiThresholdConfiguration | Uma estrutura PMI_THRESHOLD_CONFIGURATION que contém informações sobre a configuração de limite do medidor de energia. |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows 7, Windows Server 2008 R2 e versões posteriores dos sistemas operacionais Windows. |
Cabeçalho | pmi.h (inclua Pmi.h) |