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結構的陣列。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista 和更新版本的 Windows。 |
標頭 | acpiioct.h (包含 Acpiioct.h) |