структура 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 или как пустая строка, если файл ресурсов не требуется. Этот элемент действителен, только если Флаги = DIAGNOSTIC_REASON_DETAILED_STRING.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.ResourceReasonId
Идентификатор ресурса, назначенный первой строке причины в файле ресурсов, заданном resourceFileName. Этот элемент действителен, только если Флаги = DIAGNOSTIC_REASON_DETAILED_STRING.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.StringCount
Количество строк причины в массиве ReasonStrings или в файле ресурсов, заданном resourceFileName. Этот элемент действителен, только если Флаги = DIAGNOSTIC_REASON_DETAILED_STRING.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.ReasonStrings
Указатель на массив строковых указателей. Каждый элемент массива является указателем на строку с расширенным символом, заканчивающейся нулевым значением. Количество элементов массива задается строкой StringCount. Этот элемент действителен, только если Флаги = DIAGNOSTIC_REASON_DETAILED_STRING.
DUMMYUNIONNAME.SimpleString
Указатель на строку с расширенным символом, завершающуюся значением NULL, которая объясняет причину запроса на включение питания. Этот элемент действителен, только если Флаги = 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 , существует, диспетчер управления питанием извлекает строку ресурса, указанную параметром ResourceReasonId , из файла, а затем форматирует строку, заменив %1
, %2
и т. д. заполнители с соответствующими элементами из массива ReasonStrings . Другие описатели формата, используемые с FormatMessageW , не поддерживаются.
Диспетчер управления питанием извлекает строки ресурсов из ресурсов STRINGTABLE.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в Windows 7 и более поздних версиях операционной системы Windows. |
Верхняя часть | ntpoapi.h (включая Wdm.h, Ntddk.h, Ntifs.h, Ntpoapi.h) |