COUNTED_REASON_CONTEXT結構 (ntpoapi.h)
COUNTED_REASON_CONTEXT 結構包含一或多個字串,可提供電源要求的原因。
語法
typedef struct _COUNTED_REASON_CONTEXT {
ULONG Version;
ULONG Flags;
union {
struct {
UNICODE_STRING ResourceFileName;
USHORT ResourceReasonId;
ULONG StringCount;
PUNICODE_STRING ReasonStrings;
} DUMMYSTRUCTNAME;
UNICODE_STRING SimpleString;
} DUMMYUNIONNAME;
} COUNTED_REASON_CONTEXT, *PCOUNTED_REASON_CONTEXT;
成員
Version
結構的版本號碼。 將此成員設定為 DIAGNOSTIC_REASON_VERSION。
Flags
指出結構是否包含簡單的原因字串或一組詳細的原因字串。 將此成員設定為下列其中一個常數:
- DIAGNOSTIC_REASON_SIMPLE_STRING
- DIAGNOSTIC_REASON_DETAILED_STRING
DUMMYUNIONNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME.ResourceFileName
包含資源檔案路徑名稱之寬字元、Null 終止字串的指標。 此資源檔包含一或多個當地語系化字串,可提供電源要求的原因。 這個成員是選擇性的,而且可以指定為 NULL ,如果沒有資源檔,則可以指定為空字串。 只有當 旗標 = DIAGNOSTIC_REASON_DETAILED_STRING時,這個成員才有效。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.ResourceReasonId
資源檔中指派給資源檔中第一個原因字串的資源標識碼,ResourceFileName所指定。 只有當 旗標 = DIAGNOSTIC_REASON_DETAILED_STRING時,這個成員才有效。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.StringCount
ReasonStrings 陣列或資源檔中 ResourceFileName所指定的原因字串數目。 只有當 旗標 = DIAGNOSTIC_REASON_DETAILED_STRING時,這個成員才有效。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.ReasonStrings
字串指標陣列的指標。 每個陣列元素都是寬字元、以 Null 結尾字串的指標。 陣列元素的數目是由 StringCount所指定。 只有當 旗標 = DIAGNOSTIC_REASON_DETAILED_STRING時,這個成員才有效。
DUMMYUNIONNAME.SimpleString
寬字元、Null 終止字串的指標,說明電源要求的原因。 只有當 Flags = DIAGNOSTIC_REASON_SIMPLE_STRING 時,這個成員才有效。
言論
PoCreatePowerRequest 例程會使用此結構。
電源管理員 會使用此結構中包含的原因字串或字串作為功能與效能測試期間的診斷輔助。
COUNTED_REASON_CONTEXT 結構可以包含簡單的原因字串或一組詳細的原因字串。 如果 Flags = DIAGNOSTIC_REASON_SIMPLE_STRING,SimpleString 成員會指向說明電源要求原因的字串。 如果 Flags = DIAGNOSTIC_REASON_DETAILED_STRING,ResourceFileName、ResourceReasonId、StringCount,以及 ReasonStrings 成員可以提供一組詳細的電源要求原因。
DIAGNOSTIC_REASON_DETAILED_STRING旗標支援當地語系化。 如果 ResourceFileName 所指定的當地語系化資源檔 存在,則 power manager 會從檔案中擷取 ResourceReason Id 所指定的資源字元串,然後格式化字串、取代 %1
、%2
等。 佔位元,其中包含來自 ReasonStrings 陣列中的對應專案。 不支援搭配 FormatMessageW 使用的其他格式規範。
power manager 會從 STRINGTABLE 資源擷取資源字串,。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 7 和更新版本的 Windows作系統支援。 |
標頭 | ntpoapi.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Ntpoapi.h) |