IOCTL_PMI_GET_CONFIGURATION IOCTL (pmi.h)
Запрос IOCTL_PMI_GET_CONFIGURATION возвращает сведения о текущей конфигурации счетчика электроэнергии.
Основной код
Входной буфер
AssociatedIrp.SystemBuffer член пакета запросов ввода-вывода (IRP) указывает на выделенный инициатором буфер, который используется как входной буфер, так и выходной буфер запроса. В входных данных этот буфер содержит структуру PMI_CONFIGURATION, в которой для элементов ConfigurationType версии и ConfigurationType заданы допустимые значения. Элемент ConfigurationType содержит значение перечисления PMI_CONFIGURATION_TYPE, указывающее тип сведений о конфигурации, извлекаемых из счетчика питания. Это значение также определяет тип сведений о конфигурации, записываемых в выходной буфер.
Длина входного буфера
Parameters.DeviceIoControl.InputBufferLength элемент текущего расположения стека ввода-вывода IRP (IO_STACK_LOCATION) имеет размер в байтах буфера, на который указывает элемент AssociatedIrp.SystemBuffer. Этот размер должен быть больше или равен размеру(PMI_CONFIGURATION) или запрос завершится ошибкой с состоянием STATUS_INVALID_PARAMETER.
Выходной буфер
Если запрос выполнен успешно, буфер, указывающий на элемент AssociatedIrp.SystemBuffer, содержит структуру PMI_CONFIGURATION. Эта структура содержит запрошенные сведения о конфигурации.
Длина выходного буфера
Элемент Parameters.DeviceIoControl.OutputBufferLength в текущем расположении стека ввода-вывода IRP имеет размер в байтах буфера, на который указывает элемент AssociatedIrp.SystemBuffer. Для успешного выполнения запроса этот размер должен быть больше или равен размеру(PMI_CONFIGURATION). В противном случае запрос завершится ошибкой с состоянием STATUS_BUFFER_TOO_SMALL.
Блок состояния
Элемент Information имеет размер в байтах структуры PMI_CONFIGURATION.
Элемент состояния имеет одно из следующих значений:
STATUS_BUFFER_TOO_SMALL
Элемент Parameters.DeviceIoControl.OutputBufferLength элемента IRP меньше размера в байтах структуры PMI_CONFIGURATION.
STATUS_INVALID_PARAMETER
Выделенный инициатором входной буфер содержит недопустимое значение PMI_CONFIGURATION_TYPE.
STATUS_SUCCESS
Драйвер WDM, поддерживающий интерфейс PMI, успешно завершил запрос IOCTL.
Замечания
Запрос IOCTL_PMI_GET_CONFIGURATION запрашивает текущую конфигурацию счетчика питания. Значение перечисления входных PMI_CONFIGURATION_TYPE указывает тип возвращаемых данных конфигурации. Тип данных и содержимое выходного буфера зависят от запрошенных данных.
В следующей таблице описывается тип данных, возвращаемых для указанного значения перечисления PMI_CONFIGURATION_TYPE.
значение PMI_CONFIGURATION_TYPE | Описание |
---|---|
PmiBudgetingConfiguration | Структура PMI_BUDGETING_CONFIGURATION, содержащая сведения о конфигурации бюджетирования счетчика электроэнергии. |
pmiMeasurementConfiguration | Структура PMI_MEASUREMENT_CONFIGURATION, содержащая сведения о конфигурации измерения счетчика электроэнергии. |
PmiThresholdConfiguration | Структура PMI_THRESHOLD_CONFIGURATION, содержащая сведения о конфигурации порогового значения счетчика питания. |
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows 7, Windows Server 2008 R2 и более поздних версиях операционных систем Windows. |
заголовка | pmi.h (include Pmi.h) |