Coletar despejos no modo de usuário

A partir do Windows Server 2008 e do Windows Vista com o Service Pack 1 (SP1), o Relatório de Erros do Windows (WER) pode ser configurado para que despejos completos no modo de usuário sejam coletados e armazenados localmente após falha de um aplicativo de modo de usuário. Aplicativos que fazem seus próprios relatórios de falha personalizados, incluindo aplicativos .NET, não são compatíveis com esse recurso.

Este recurso não está habilitado por padrão. Habilitar o recurso requer privilégios de administrador. Para habilitar e configurar o recurso, use os seguintes valores do Registro na chave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps.

Valor Descrição Type Valor padrão
DumpFolder O caminho em que os arquivos de despejo devem ser armazenados. Se você não usar o caminho padrão, verifique se a pasta contém ACLs que permitem que o processo de falha escreva dados na pasta. Para falhas de serviço, o despejo é gravado em pastas de perfil específicas do serviço, dependendo da conta de serviço usada. Por exemplo, a pasta de perfil para serviços do sistema é %WINDIR%\System32\Config\SystemProfile. Para serviços locais e de rede, a pasta é %WINDIR%\ServiceProfiles.
REG_EXPAND_SZ %LOCALAPPDATA%\CrashDumps
DumpCount O número máximo de arquivos de despejo na pasta. Quando o valor máximo for excedido, o arquivo de despejo mais antigo da pasta será substituído pelo novo arquivo de despejo. REG_DWORD 10
DumpType Especifique um dos seguintes tipos de despejo:
  • 0: Despejo personalizado
  • 1: Minidespejo
  • 2: Despejo completo
REG_DWORD 1
CustomDumpFlags As opções de despejo personalizado a serem usadas. Esse valor é usado somente quando DumpType é definido como 0.
As opções são uma combinação bit a bit dos valores de enumeração MINIDUMP_TYPE.
REG_DWORD
0x00000121 (MiniDumpWithDataSegs MiniDumpWithUnloadedModules MiniDumpWithProcessThreadData == 0x00000001 0x00000020 0x00000100)

Observação

Um despejo de memória não é coletado quando você define a depuração automática para falhas de aplicativo.

Esses valores do Registro representam as configurações globais. Você também pode fornecer configurações por aplicativo que substituem as configurações globais. Para criar uma configuração por aplicativo, crie uma nova chave para seu aplicativo em HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps

(por exemplo, HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps\MyApplication.exe). Adicione suas configurações de despejo na chave MyApplication.exe. Se o aplicativo falhar, o WER lerá primeiro as configurações globais e substituirá qualquer uma das configurações com as configurações específicas do aplicativo.

Depois que um aplicativo falhar e antes de sua terminação, o sistema verificará as configurações do Registro para determinar se um despejo local deve ser coletado. Após a conclusão da coleta de despejo, o aplicativo terá permissão para terminar normalmente. Se o aplicativo der suporte à recuperação, o despejo local será coletado antes que o retorno de chamada de recuperação seja chamado.

Esses despejos são configurados e controlados independentemente do restante da infraestrutura WER. Você pode usar a coleção de despejo local mesmo se o WER estiver desabilitado ou se o usuário cancelar o relatório do WER. O despejo local pode ser diferente do despejo enviado à Microsoft.