Compartilhar via


Método IDebugControl2::OutputVaList (dbgeng.h)

O método OutputVaList formata uma cadeia de caracteres e envia o resultado para os retornos de chamada de saída registrados com os clientes do mecanismo.

Sintaxe

HRESULT OutputVaList(
  [in] ULONG   Mask,
  [in] PCSTR   Format,
  [in] va_list Args
);

Parâmetros

[in] Mask

Especifica o campo de bits do tipo saída. Consulte DEBUG_OUTPUT_XXX para obter valores possíveis.

[in] Format

Especifica a cadeia de caracteres de formato, como no printf. Normalmente, 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 de um 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.

Caractere Tipo de argumento Argumento Texto impresso
%p ULONG64 Ponteiro em um espaço de endereço. O valor do ponteiro.
%N DWORD_PTR (32 ou 64 bits, dependendo da arquitetura do host) Ponteiro no espaço de endereço virtual do host. O valor do ponteiro. (Isso é equivalente ao caractere C %p padrão.)
%I ULONG64 Qualquer valor de 64 bits. O valor especificado. Se for maior que 0xFFFFFFFF, ele será impresso como um valor de 64 bits; caso contrário, ele será impresso como um valor de 32 bits.
%ma ULONG64 Endereço de uma cadeia de caracteres ASCII terminada em NULL no espaço de endereço virtual do processo. 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 processo. A cadeia de caracteres especificada.
%msa ULONG64 Endereço de uma estrutura ANSI_STRING no espaço de endereço virtual do processo. A cadeia de caracteres especificada.
%msu ULONG64 Endereço de uma estrutura de UNICODE_STRING no espaço de endereço virtual do processo. A cadeia de caracteres especificada.
%y ULONG64 Endereço no espaço de endereço virtual do processo de um item com informações de símbolo. Cadeia de caracteres que contém o nome do símbolo especificado (e deslocamento, se houver).
%ly ULONG64 Endereço no espaço de endereço virtual do processo de um item com informações de símbolo. 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] Args

Especifica parâmetros adicionais que representam valores a serem inseridos na saída durante a formatação. Args deve ser inicializado usando va_start. Esse método não chama va_end.

Retornar valor

Esse método também pode retornar valores de erro. Consulte Valores retornados para obter mais detalhes.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.

Comentários

Ao gerar cadeias de caracteres de saída muito grandes, é possível atingir os limites do mecanismo de depurador ou do sistema operacional. Por exemplo, algumas versões do mecanismo de depurador têm um limite de caracteres de 16K para uma única saída. Se você achar que a saída muito grande está sendo truncada, talvez seja necessário dividir a saída em várias solicitações.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho dbgeng.h (inclua Dbgeng.h, Stdarg.h)

Confira também

ControlledOutputVaList

Idebugcontrol

IDebugControl2

IDebugControl3

Saída

dprintf