Usando o rastreamento de software WPP em drivers KMDF
O rastreamento de software WPP permite adicionar mensagens de rastreamento que ajudam você a depurar seu driver. Além disso, o agente de eventos da estrutura fornece centenas de mensagens de rastreamento que você pode exibir.
Você pode exibir mensagens de rastreamento usando TraceView ou Tracelog. Você também pode enviar mensagens de rastreamento para um depurador de kernel.
Adicionando mensagens de rastreamento ao seu driver
Para adicionar mensagens de rastreamento ao driver baseado em estrutura, você deve:
Adicione uma diretiva #include a cada um dos arquivos de origem do driver que contém qualquer uma das macros do WPP. Essa diretiva deve identificar um arquivo TMH (cabeçalho de mensagem de rastreamento). O nome do arquivo deve ter um formato de <driver-source-file-name.tmh.>
Por exemplo, se o driver consistir em dois arquivos de origem, chamados MyDriver1.c e MyDriver2.c, MyDriver1.c deverá conter:
#include "MyDriver1.tmh"
e MyDriver2.c devem conter:
#include "MyDriver2.tmh"
Quando você cria o driver no Microsoft Visual Studio, o pré-processador WPP gera o . arquivos tmh .
Defina uma macro WPP_CONTROL_GUIDS em um arquivo de cabeçalho. Essa macro define um GUID e sinalizadores de rastreamento para as mensagens de rastreamento do driver.
Inclua uma macro WPP_INIT_TRACING na rotina DriverEntry do driver. Essa macro ativa o rastreamento de software em seu driver.
Inclua uma macro WPP_CLEANUP na função de retorno de chamada EvtDriverUnload do driver. Essa macro desativa o rastreamento de software em seu driver.
Use a macro DoTraceMessage ou uma versão personalizada da macro no driver para criar mensagens de rastreamento.
Abra as Páginas de Propriedades do seu projeto de driver. Clique com o botão direito do mouse no projeto do driver no Gerenciador de Soluções e selecione Propriedades. Nas Páginas de Propriedades do driver, clique em Propriedades de Configuração e, em seguida, rastreamento Wpp. No menu Geral , defina Executar Rastreamento WPP como Sim. No menu Opções de Arquivo , você também deve especificar o arquivo de modelo WPP da estrutura, por exemplo:
{km-WdfDefault.tpl}*.tmh
Para especificar configurações adicionais de rastreamento do WPP para seu projeto de driver no Visual Studio, clique com o botão direito do mouse no projeto de driver em Soluções Explorer. Em seguida, siga o link para Propriedades-Propriedades de> Configuração-Rastreamento> WPP.
Para especificar um arquivo de configuração de rastreamento, use a configuração 'Verificar Dados de Configuração'. Para mais de um arquivo de configuração de rastreamento, adicione-o sob a 'Linha de Comando'-> 'Opções Adicionais' da seguinte maneira
-scan:"$(KMDF_INC_PATH)\$(KMDF_VER_PATH)\wdftraceenums.h"
Para obter mais informações sobre como adicionar mensagens de rastreamento ao driver, consulte Adicionando macros WPP a um driver.
Drivers de exemplo que usam rastreamento de software WPP
Os drivers de exemplo AMCC5933, NONPNP, KMDF_FX2, PCIDRV, PLX9x5x e Serial usam o rastreamento de software WPP.