ACPI_EVAL_INPUT_BUFFER_V1_EX 结构 (acpiioct.h)

ACPI_EVAL_INPUT_BUFFER_EX结构用作 IOCTL_ACPI_EVAL_METHOD_EX 请求和 IOCTL_ACPI_ASYNC_EVAL_METHOD_EX请求的 输入。 结构在不使用输入参数的 ACPI 命名空间中提供控件方法的路径和名称。

语法

typedef struct _ACPI_EVAL_INPUT_BUFFER_V1_EX {
  ULONG Signature;
  CHAR  MethodName[256];
} ACPI_EVAL_INPUT_BUFFER_V1_EX, *PACPI_EVAL_INPUT_BUFFER_V1_EX, ACPI_EVAL_INPUT_BUFFER_EX, *PACPI_EVAL_INPUT_BUFFER_EX;

成员

Signature

不包含参数的输入缓冲区的签名,该参数必须设置为 ACPI_EVAL_INPUT_BUFFER_SIGNATURE_EX。

MethodName[256]

一个以 NULL 结尾的 ASCII 字符串,其中包含 ACPI 命名空间中控件方法的路径和名称。 字符串可以包含的最大字符数(包括 NULL 终止符)为 256。 有关如何提供控件方法的路径和名称的详细信息,请参阅本主题后面的“备注”部分。

注解

设备的驱动程序可以使用IOCTL_ACPI_EVAL_METHOD_EX请求或IOCTL_ACPI_ASYNC_EVAL_METHOD_EX请求来评估作为设备的后代子对象的控制方法。 如果 方法不采用输入参数,则这些请求采用输入ACPI_EVAL_INPUT_BUFFER_EX结构,如下所示:

  • “签名” 设置为“ACPI_EVAL_INPUT_BUFFER_SIGNATURE_EX”。
  • MethodName 设置为以 NULL 结尾的字符串,该字符串为 ACPI 命名空间中的控制方法提供完整路径和名称,或者提供相对于发送评估请求的设备的方法的路径和名称。

    例如,假设请求发送到名为“ABCD”的设备,该设备是 ACPI 命名空间根的直接子级,“ABCD”设备支持名为“CHLD”的子设备,并且“CHLD”设备支持名为“_FOO”的方法。 在这种情况下,评估请求可以提供“\ABCD”。CHLD._FOO,即 ACPI 命名空间中控件方法的完全限定路径和名称,或“CHLD._FOO”,即相对于 ACPI 命名空间中“ABCD”设备的控件方法的路径和名称。

    有关如何获取 ACPI 命名空间中控件方法的完全限定路径和名称的详细信息,请参阅 枚举子设备和控制方法

有关如何使用此结构的详细信息,请参阅 评估 ACPI 控制方法

要求

要求
最低受支持的客户端 Windows Vista 和更高版本的 Windows。
标头 acpiioct.h (包括 Acpiioct.h)

另请参阅

IOCTL_ACPI_ASYNC_EVAL_METHOD_EX

IOCTL_ACPI_EVAL_METHOD_EX