структура ACPI_EVAL_INPUT_BUFFER_COMPLEX_V1_EX (acpiioct.h)

Структура ACPI_EVAL_INPUT_BUFFER_COMPLEX_EX используется в качестве входных данных для запроса IOCTL_ACPI_EVAL_METHOD_EX и запроса IOCTL_ACPI_ASYNC_EVAL_METHOD_EX . Структура предоставляет путь и имя метода управления в пространстве имен ACPI и массив входных аргументов ACPI_METHOD_ARGUMENT структур.

Синтаксис

typedef struct _ACPI_EVAL_INPUT_BUFFER_COMPLEX_V1_EX {
  ULONG                   Signature;
  CHAR                    MethodName[256];
  ULONG                   Size;
  ULONG                   ArgumentCount;
  ACPI_METHOD_ARGUMENT_V1 Argument[ANYSIZE_ARRAY];
} ACPI_EVAL_INPUT_BUFFER_COMPLEX_V1_EX, *PACPI_EVAL_INPUT_BUFFER_COMPLEX_V1_EX, ACPI_EVAL_INPUT_BUFFER_COMPLEX_EX, *PACPI_EVAL_INPUT_BUFFER_COMPLEX_EX;

Члены

Signature

Сигнатура расширенного сложного входного буфера, для которого необходимо задать значение ACPI_EVAL_INPUT_BUFFER_COMPLEX_SIGNATURE_EX.

MethodName[256]

Строка ASCII, завершающаяся null, которая содержит путь и имя метода элемента управления в пространстве имен ACPI. Максимальное число символов, которое может содержать строка, включая признак конца NULL, составляет 256.

Дополнительные сведения о том, как указать путь и имя метода элемента управления, см. в разделе Примечания далее в этом разделе.

Size

Количество байтов, содержащихся в массиве Аргументов .

ArgumentCount

Количество структур ACPI_METHOD_ARGUMENT переменной длины, содержащихся в массиве Argument . Массив Argument может содержать не более семи структур аргументов.

Argument[ANYSIZE_ARRAY]

Массив структур ACPI_METHOD_ARGUMENT.

Комментарии

Драйвер для устройства может использовать запрос IOCTL_ACPI_EVAL_METHOD_EX или запрос IOCTL_ACPI_ASYNC_EVAL_METHOD_EX для оценки метода управления, который является потомком дочернего объекта устройства. Если метод принимает сложный массив аргументов, эти запросы принимают входные данные ACPI_EVAL_INPUT_BUFFER_COMPLEX_EX структуре следующим образом:

  • Задайте для свойства Подпись значение ACPI_EVAL_INPUT_BUFFER_COMPLEX_SIGNATURE_EX.
  • Задайте для MethodName строку, завершающуюся значением NULL, которая предоставляет полный путь и имя для метода управления в пространстве имен ACPI или путь и имя метода относительно устройства, на которое отправляется запрос на оценку.

    Например, предположим, что запрос отправляется на устройство с именем "ABCD", которое является непосредственным дочерним элементом корня пространства имен ACPI, что устройство "ABCD" поддерживает дочернее устройство с именем "CHLD", а устройство "CHLD" поддерживает метод с именем "_FOO". В этом случае запрос на оценку может предоставить либо \ABCD. CHLD._FOO," — это полный путь и имя метода элемента управления в пространстве имен ACPI, или "CHLD._FOO", представляющий собой путь и имя метода управления, относящееся к устройству ABCD в пространстве имен ACPI.

    Дополнительные сведения о том, как получить полный путь и имя метода элемента управления в пространстве имен ACPI, см. в разделе Перечисление дочерних устройств и методов управления.

  • Для параметра Size задается количество байтов в массиве Аргументов .
  • ArgumentCount — это число аргументов в массиве аргументов .
  • Аргументу присваивается массив ACPI_METHOD_ARGUMENT структур.
Дополнительные сведения об использовании этой структуры см. в разделе Оценка методов управления ACPI.

Требования

Требование Значение
Минимальная версия клиента Windows Vista и более поздние версии Windows.
Верхняя часть acpiioct.h (включая Acpiioct.h)

См. также раздел

ACPI_METHOD_ARGUMENT

IOCTL_ACPI_ASYNC_EVAL_METHOD_EX

IOCTL_ACPI_EVAL_METHOD_EX