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]

NULL 終止的 ASCII 字串,其中包含 ACPI 命名空間中控件方法的路徑和名稱。 字串可包含的最大字元數,包括 NULL 終止符為 256。

如需如何提供控件方法路徑和名稱的詳細資訊,請參閱本主題稍後的一節。

Size

Argument 陣列包含的位元組數目。

ArgumentCount

Argument 陣列包含的可變長度ACPI_METHOD_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』,這是 ACPI 命名空間中相對於 『ABCD』 裝置的控制方法路徑和名稱。

    如需如何在 ACPI 命名空間中取得控制項方法的完整路徑和名稱的詳細資訊,請參閱 列舉子裝置和控制項方法

  • Size 設定為 Argument 陣列中的位元元組數目。
  • ArgumentCount 設定為 Argument 陣列中的自變數數目。
  • 自變數 設定為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