Метод IDebugControl3::OutputVaList (dbgeng.h)
Метод OutputVaList форматирует строку и отправляет результат в обратные вызовы выходных данных , зарегистрированные в клиентах обработчика.
Синтаксис
HRESULT OutputVaList(
[in] ULONG Mask,
[in] PCSTR Format,
[in] va_list Args
);
Параметры
[in] Mask
Указывает битовое поле выходного типа. Возможные значения см. в DEBUG_OUTPUT_XXX .
[in] Format
Задает строку формата, как в printf. Как правило, символы преобразования работают точно так же, как и в C. Для символов преобразования с плавающей запятой 64-разрядный аргумент интерпретируется как 32-разрядное число с плавающей запятой, если не используется модификатор l .
Символ преобразования %p поддерживается, но он представляет указатель в адресном пространстве целевого объекта. Он может не иметь модификаторов и использовать внутреннее форматирование отладчика. Поддерживаются следующие дополнительные символы преобразования.
Знак | Тип аргумента | Аргумент | Печатный текст |
---|---|---|---|
%p | ULONG64 | Указатель в адресном пространстве. | Значение указателя. |
%N | DWORD_PTR (32 или 64 бита в зависимости от архитектуры узла) | Указатель в виртуальном адресном пространстве узла. | Значение указателя. (Это эквивалентно стандартному символу C %p .) |
%I | ULONG64 | Любое 64-разрядное значение. | Указанное значение. Если значение больше 0xFFFFFFFF, оно выводится как 64-разрядное значение; В противном случае он выводится в виде 32-разрядного значения. |
%ma | ULONG64 | Адрес строки ASCII, завершаемой null, в виртуальном адресном пространстве процесса. | Указанная строка. |
%mu | ULONG64 | Адрес строки Юникода, завершаемой значением NULL, в виртуальном адресном пространстве процесса. | Указанная строка. |
%msa | ULONG64 | Адрес структуры ANSI_STRING в виртуальном адресном пространстве процесса. | Указанная строка. |
%msu | ULONG64 | Адрес структуры UNICODE_STRING в виртуальном адресном пространстве процесса. | Указанная строка. |
%y | ULONG64 | Адрес в виртуальном адресном пространстве процесса элемента со сведениями о символах. | Строка, содержащая имя указанного символа (и смещение, если таковое есть). |
%ly | ULONG64 | Адрес в виртуальном адресном пространстве процесса элемента со сведениями о символах. | Строка, содержащая имя указанного символа (и смещение, если таковое имеется), а также любые доступные сведения об исходной строке. |
[in] Args
Указывает дополнительные параметры, представляющие значения, которые будут вставлены в выходные данные во время форматирования. Аргументы необходимо инициализировать с помощью va_start. Этот метод не вызывает va_end.
Возвращаемое значение
Этот метод также может возвращать значения ошибок. Дополнительные сведения см. в разделе Возвращаемые значения .
Код возврата | Описание |
---|---|
|
Метод выполнен успешно. |
Комментарии
При создании очень больших выходных строк можно достичь пределов подсистемы отладчика или операционной системы. Например, некоторые версии обработчика отладчика имеют ограничение в 16 КБ символов для одного вывода. Если вы обнаружите, что очень большие выходные данные усекаются, может потребоваться разделить выходные данные на несколько запросов.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | dbgeng.h (включая Dbgeng.h, Stdarg.h) |