2010-01-22 15 views
8

Desde Windows Vista, tenemos la buena opción de crear un volcado de memoria de un proceso directamente desde el Administrador de tareas. Lamentablemente, Windows Server 2003 todavía no tiene esta opción :(Encontré formas de hacer un volcado de memoria completo en todo el sistema, pero eso es demasiado.¿Cómo crear un volcado de memoria de un proceso en Windows Server 2003?

¿Hay alguna manera de volcar un solo proceso? Como esto es un Servidor de producción, no quiero instalar herramientas pesadas o un servicio que se ejecute en segundo plano, idealmente me gustaría volcar el proceso, copiar el volcado a mi propia máquina y depurarlo allí.

Respuesta

5

Sí, busca Userdump.exe Ver este KB article

+0

¡Brillante! ¡Funciona de maravilla! –

7

puede adjuntar la Windows debugger (ntsd o windbg) a la proccess, a continuación, cuando se quiere crear un volcado del proceso se puede utilizar el comando .dump..:

0:000> .dump /ma myprocess-crash.dmp 
Creating myprocess-crash.dmp - mini user dump 
Dump successfully written 
0:000> 
+0

Gracias. Elijo la otra opción para evitar tener que instalar windbg –

2

Creo que esta 'respuesta' debería ser un comentario bajo la respuesta de jeffamaphone, pero no tengo suficiente reputación para comentar.

Windows Server 2003 se envía con ntsd, por lo que no es necesario instalar nada. Obtener el ID de proceso del proceso y adjuntar ntsd al proceso:

C:> ntsd -p 4356 

A continuación, utilice ntsd para volcar el proceso:

.dump /f c:\MyDumpFiles\foo.dmp 
1

No se olvide de procdump de sysinternals.com (redirige a la EM ya que los compraron hace unos años). Muy pequeña descarga.

Cuestiones relacionadas