PWINDBG_OUTPUT_ROUTINE função de retorno de chamada (wdbgexts.h)
A função de retorno de chamada implementa a funcionalidade para imprimir uma cadeia de caracteres formatada na janela Comando do Depurador.
O cabeçalho wdbgexts.h declara uma macro, dprintf que imprime a cadeia de caracteres formatada. Ele funciona como a rotina de linguagem C printf.
Sintaxe
PWINDBG_OUTPUT_ROUTINE PwindbgOutputRoutine;
void PwindbgOutputRoutine(
[in] PCSTR lpFormat,
[in] ... unnamedParam2
)
{...}
Parâmetros
[in] lpFormat
Especifica a cadeia de caracteres de formato, como em printf. Em geral, os caracteres de conversão funcionam exatamente como em C. Para os caracteres de conversão de ponto flutuante, o argumento de 64 bits é interpretado como um número de ponto flutuante de 32 bits, a menos que o modificador l seja usado.
Há suporte para o caractere de conversão %p, mas representa um ponteiro no espaço de endereço virtual do destino. Ele pode não ter modificadores e usa a formatação de endereço interno do depurador. Há suporte para os seguintes caracteres de conversão adicionais:
Personagem | Tipo de argumento | Argumento | Texto impresso |
---|---|---|---|
%p | ULONG64 | Ponteiro no espaço de endereço virtual do destino | O valor do ponteiro. |
%N | DWORD_PTR (32 ou 64 bits, dependendo da arquitetura de do host) | Ponteiro no espaço de endereço virtual do host | O valor do ponteiro. (Isso é equivalente ao caractere de %p C padrão.) |
%I | ULONG64 | Qualquer valor de 64 bits | O valor especificado. Se for maior que 0xFFFFFFFF ele for impresso como um endereço de 64 bits, caso contrário, ele será impresso como um endereço de 32 bits. |
%ma | ULONG64 | Endereço de uma cadeia de caracteres ASCII terminada em NULL no espaço de endereço virtual do destino | A cadeia de caracteres especificada. |
%mu | ULONG64 | Endereço de uma cadeia de caracteres Unicode terminada em NULL no espaço de endereço virtual do destino | A cadeia de caracteres especificada. |
%msa | ULONG64 | Endereço de uma estrutura ANSI_STRING no espaço de endereço virtual do destino | A cadeia de caracteres especificada. |
%msu | ULONG64 | Endereço de uma estrutura UNICODE_STRING no espaço de endereço virtual do destino | A cadeia de caracteres especificada. |
%y | ULONG64 | Endereço de um símbolo de depurador no espaço de endereço virtual do destino | Cadeia de caracteres que contém o nome do símbolo especificado (e deslocamento, se houver). |
%ly | ULONG64 | Endereço de um símbolo de depurador no espaço de endereço virtual do destino | Cadeia de caracteres que contém o nome do símbolo especificado (e deslocamento, se houver), bem como qualquer informação de linha de origem disponível. |
[in] unnamedParam2
[argumentos] – especifica argumentos para a cadeia de caracteres de formato, como em printf. O número de argumentos especificados deve corresponder ao número de caracteres de conversão em FormatString. Cada argumento é uma expressão que será avaliada pelo avaliador de expressão padrão (MASM ou C++). Para obter detalhes, consulte sintaxe de expressão numérica.
Valor de retorno
Nenhum
Observações
Ao gerar cadeias de caracteres de saída muito grandes, é possível que os limites do mecanismo de depurador ou do sistema operacional possam ser atingidos. Por exemplo, algumas versões do mecanismo de depurador têm um limite de caracteres de 16K para uma única parte da saída. Se você achar que a saída muito grande está sendo truncada, talvez seja necessário dividir sua saída em várias solicitações.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | wdbgexts.h (inclua Wdbgexts.h, Dbgeng.h) |