2010-11-08 8 views
5

Tengo un proceso .NET que a veces falla con AccessViolationException en el código nativo de alguna biblioteca de terceros.¿Cómo crear mini volcado de proceso en crash sin ejecutar AdPlus explícitamente en Windows 7?

Deseo tener mini volcado de memoria completa cuando eso sucede. He leído esta página: http://support.microsoft.com/kb/931673, la sección "Para recopilar volcados en modo de usuario" y configuré el registro como se explica en el artículo. Sin embargo, cuando se produce el bloqueo, se crea un informe realmente pequeño: no se ve ningún archivo * .mdmp.

Ahora, sé cómo ejecutar el proceso desde ADPLus o cómo hacer que se adjunte a un proceso ya en ejecución. Pero requiere ejecutar ADPLus explícitamente.

Me preguntaba cómo puedo configurar Windows para ejecutar ADPlus automáticamente, cada vez que se inicia el proceso problemático, no importa la forma en que se pone en marcha - de msbuild, doble clic, desde el guión de consola, etc ...

Significado , cuando se ejecuta aaaa.exe se reemplaza por ejecutar ADPlus con ciertos indicadores que generan aaaa.exe con las opciones de línea de comando respectivas.

Sé que hay indicadores de ejecución de imagen en Windows, que hacen eso, pero no sé los detalles.

Gracias.

EDIT1

Es importante conservar los parámetros de línea de comandos, por lo que si aaa.exe se ejecuta con una bandera, entonces, por supuesto, el mismo debería ser cierto cuando se ejecuta aaa.exe desde el depurador .

+0

¿Cuál es el beneficio sobre el Informe de errores de Windows configure (WER) d para tomar botaderos locales? http://msdn.microsoft.com/en-us/library/windows/desktop/bb787181%28v=vs.85%29.aspx –

+0

Ninguno, pero la pregunta fue hecha hace 3 años, probablemente no sabía acerca de WER en aquel momento. – mark

+0

@ThomasW. en el enlace que proporcionó: "Las aplicaciones que realizan sus propios informes personalizados de bloqueo, incluidas las aplicaciones .NET, no son compatibles con esta función" –

Respuesta

2

No importa, lo encontré.

  1. Crear una clave denominada después del proceso (como aaa.exe) bajo HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ archivos de imagen Opciones de ejecución
  2. Añadir un depurador valor de cadena con el valor ADPlus -crash -mss YourSymbolCacheFolderPath -MiniOnSecond -quiet -o YourDumpFolderPath -SC
Cuestiones relacionadas