Compartilhar via


Setting Up the Application Verifier Tool to Test a Driver

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Você pode usar a ferramenta Application Verifier para testar um driver. Para informações sobre testes um aplicativo, consulte Testing an Application with the Application Verifier Tool.

Há dois métodos de testes um driver COM Application Verifier que provavelmente ser usada: Com KITL de desenvolvedor geral testes e sem KITL para testes campo expandida.

Observação

É altamente recomendável que você testar com KITL primeiro. Uma conexão KITL fornecerá valiosos comentários na janela de depuração sobre o status de Application Verifier para indicar essa instalação tem sido feita corretamente.

Para configurar a ferramenta Application Verifier para testar drivers com KITL

  1. Execute um compilar limpa para gerar um linha de base Flat Release Directory (FRD).

  2. Abra uma janela compilar e definir o seguinte ambiente variáveis:

    • VERIFY_MODULES =< arquivo nomes dos módulos para testar >
      Deve ser definida para o DLL que contém seus binários driver; Se auxiliar DLLs estiverem envolvido, eles também devem ser especificamente chamado fora. Se múltiplo módulos forem especificados, deixar um espaço entre nomes módulo.
    • VERIFY_OPTIONS =< opções >
      As opções comuns para drivers incluem: EnableFanOutNoMapFilesIgnoreNullFree
    • VERIFY_SHIMS =< shims para aplicar >
      Opcional. É o valor usar como padrão shim_*.dll. Para drivers, são os shims provavelmente desejados shim_heap.dll e shim_hleak.dll.
    • IMGSHIMENABLE = 1
  3. Shims e arquivos de suporte devem ser encontrados na FRD no tempo que de dispositivo é inicializado. Eles podem ser facilmente copiados para o FRD pela execução de comando Getappverif_cetk.bat, que está no &LT;Caminho instalação construtor plataforma&Gt; \Cepb\Wcetk\Ddtk\Desktop. Este comando requer a variável de ambiente _FLATRELEASEDIR ser definida na ordem saber onde para copiar os arquivos. Em **

  4. Executar makeimg. Isso resultará na criação de uma arquivo chamado VERIFY.txt Na FRD que especifica as opções shimming para autoloader a correção. Ele será também causar a assinatura de todas as Application Verifier relacionado binários, um crítico etapa no processo de Application Verifier.

  5. Inicializar o dispositivo se ele estiver configurado para inicializar a partir de FRD. Caso contrário, memória flash a imagem criada para o dispositivo e inicializar com uma conexão Platform Builder (PB) para o dispositivo. Na janela de depuração de PB você verá indicações antecipadas de shims autoloading.

    Aplicativo de verificação shims foram projetados para comparar alocação recurso no tempo de entrada para o tempo de sair. Porque os drivers nunca sair, é necessário estabelecer pontos testar manualmente. shim_heap.dll e shim_hleak.dll Comandos suporte para essa finalidade.

  6. Após a inicialização, utilizar a janela de comando destino no PB para inserir a seguinte linhas de comando, dependendo de shims especificados na VERIFY_SHIMS variável de ambiente na etapa 2:

    • shim_heap.dll loadext: Anexar uma interface de comando a correção de heap
    • shim_hleak.dll loadext: Anexar uma interface de comando a correção de hleak
    • heapverif * chk: Estabelecer um apontar verificar em todos os módulos para a correção heap
    • hleak * chk: Estabelecer um apontar verificar em todos os módulos para a correção hleak

    Agora você está pronto para exercício seu driver.

  7. Executar funções dispositivo que exercício totalmente o driver ou um de destino a funcionalidade.

  8. Digite o seguinte comandos:

    • heapverif * delta*(Um arquivo de log nomeado* heapverif_interim.log é criado na FRD)
    • hleak * deltalog*(Um arquivo de log é criado na FRD; o nome do arquivo é exibido na janela de comando)*
  9. Uso avlogview.exe a exibição de logs. Este aplicativo pode ser encontrado em &LT;Caminho instalação construtor plataforma&Gt; \CEPB\wcetk\DDTK\DESKTOP

Para configurar a ferramenta Application Verifier para testar drivers sem KITL

  1. Verifique os binários e VERIFY.txt disponível no início do processo inicializar na imagem de dispositivo.

    • Para começar testes imediatamente após um inicializar limpa, esses arquivos devem estar na imagem em tempo de compilação.
    • Se não for testes imediatamente após um inicializar limpa exigido, copiar os arquivos para armazenamento persistente em \Windows Antes de reinicializar o dispositivo.
  2. Uso shimexp.exe (encontradas em &LT;Caminho instalação construtor plataforma&Gt;CEPB\wcetk\DDTK\ &LT;destino CPU&Gt; \) para inserir os comandos estabelecer pontos testar até o dispositivo.

    Este utilitário atua como uma interface de comando para os shims. No entanto, pois ele não tem nenhum componente interface do usuário, os comandos devem ser passados como parâmetros para shimexp.exe. Isso é facilmente realizado criando links para o comando:

    1. Usar ActiveSync para copiar shimexp.exe Para \Windows Sobre o dispositivo.
    2. Criar uma pasta no dispositivo no \Windows\Start Menu\Debug Apps\.
    3. Criar arquivos link em seu área de trabalho ou outros usando localidade conhecida O Notepad.exe ou um editor semelhante.
    4. Usar ActiveSync para local o link arquivos para o newly-Created Depuração de aplicativos pasta.

PARA instância, criar um arquivo chamado HeapChk.lnk Como um processado arquivo TXT com o seguinte conteúdo:

77#"\Windows\shimexp.exe" -s shim_heap.dll -f \HeapChk.log - q - c heapverif * chk

Em seguida, crie um arquivo chamado HeapDelta.lnk Com o seguinte conteúdo:

81#"\Windows\shimexp.exe" -s shim_heap.dll -f \HeapDelta.log - q - c heapverif * delta

Copiar esses arquivos para o dispositivo e esses dois comandos serão disponível a partir de interface do usuário do dispositivo indo para Inicia Menu | de depuração do aplicativo.

Neste exemplo, o comando Intervalo criará um arquivo chamado log HeapDelta.log Na raiz do dispositivo, que irá conter as mesmas informações como pode ser visto na janela de comando do dispositivo ao usar KITL. Ele também criará heapverif_interim.log Nesta localidade. Esses arquivos podem ser extraídos do dispositivo com ActiveSync.

See Also

Other Resources

Application Verifier Tool