Compartilhar via


Função EtwWriteString (wdm.h)

A função EventWriteString é uma função de rastreamento que você pode usar quando nenhum dado sofisticado é necessário. Essa função é semelhante a uma instrução de impressão de depuração.

Sintaxe

NTSTATUS EtwWriteString(
  [in]           REGHANDLE RegHandle,
  [in]           UCHAR     Level,
  [in]           ULONGLONG Keyword,
  [in, optional] LPCGUID   ActivityId,
  [in]           PCWSTR    String
);

Parâmetros

[in] RegHandle

Um Ponteiro para o identificador de registro do provedor de eventos, que é retornado pela função EtwRegister se o registro do provedor de eventos for bem-sucedido.

[in] Level

O nível no qual o evento está ativo.

[in] Keyword

O palavra-chave para o evento. Um palavra-chave é uma máscara de bits que faz instruções gerais sobre a categoria do evento ou erro. Como o palavra-chave é uma máscara de bits, você pode aplicar mais de um palavra-chave a um único evento. Você pode definir as palavras-chave e as posições de bit ou usar palavras-chave padrão do Windows ou usar a combinação de suas próprias palavras-chave e as palavras-chave do Windows.

[in, optional] ActivityId

O identificador que indica a atividade associada ao evento. A ActivityId fornece uma maneira de agrupar eventos relacionados e é usada no rastreamento de ponta a ponta. Esse identificador é opcional e pode ser NULL.

[in] String

Uma cadeia de caracteres terminada em nulo (WCHAR).

Retornar valor

A função retornará STATUS_SUCCESS se o evento for publicado com êxito.

Comentários

Como a cadeia de caracteres produzida pela função EventWriteString não é localizável, essa função não é recomendada para uso no código de produção. Essa função não deve ser usada para registrar eventos altamente visíveis.

Você pode chamar EtwWriteString em qualquer IRQL. No entanto, quando IRQL é maior que APC_LEVEL, todos os dados passados para as funções EtwWrite, EtwWriteEx, EtwWriteString e EtwWriteTransfer não devem ser pagináveis. Ou seja, qualquer rotina de modo kernel em execução no IRQL maior que APC_LEVEL não pode acessar a memória paginável. Os dados passados para as funções EtwWrite, EtwWriteEx, EtwWriteString e EtwWriteTransfer devem residir na memória do espaço do sistema, independentemente do que seja o IRQL.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows Vista e versões posteriores do Windows.
Plataforma de Destino Universal
Cabeçalho wdm.h (inclua Wdm.h, Ntddk.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Qualquer nível (consulte a seção Comentários.)

Confira também

EtwWrite

EtwWriteEx

EtwWriteTransfer