2010-01-22 12 views
8

Dal momento che Windows Vista, abbiamo la bella opzione per creare un dump della memoria di un processo direttamente da Task Manager. Purtroppo, Windows Server 2003 non ha ancora questa opzione :(Ho trovato modi per eseguire un dump completo della memoria a livello di sistema, ma è un po 'troppo.Creazione di un dump della memoria di un processo in Windows Server 2003?

C'è un modo per eseguire il dump di un singolo processo? un server di produzione, non voglio installare alcun strumento pesante o servizio che venga eseguito in background, preferirei semplicemente eseguire il dump del processo, copiare il dump sul mio computer e eseguirne il debug.

risposta

5

Sì, cercare userdump.exe Vedere questo KB article

+0

Lucido! Funziona come un fascino! –

7

È possibile collegare il Windows debugger (NTSD o WinDbg) al proccess, poi quando si desidera creare un dump del processo è possibile utilizzare il comando .dump..:

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

Grazie. Scelgo l'altra opzione per evitare di dover installare windbg –

2

Penso che questa "risposta" dovrebbe essere un commento sotto la risposta di jeffamaphone ma non ho abbastanza reputazione per commentare.

Windows Server 2003 viene fornito con ntsd quindi non è necessario installare nulla. Ottenere l'ID di processo del processo e allegare ntsd al processo:

C:> ntsd -p 4356 

Quindi utilizzare ntsd il dump del processo:

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

Non dimenticare ProcDump da sysinternals.com (reindirizza a MS da quando li hanno acquistati qualche anno fa). Download molto piccolo.

Problemi correlati