Erstellen eines Speicherabzugs eines Prozesses in Windows Server 2003?

8

Seit Windows Vista haben wir die nette Möglichkeit, einen Speicherabzug eines Prozesses direkt aus dem Task-Manager zu erstellen. Leider hat Windows Server 2003 diese Option noch nicht :( Ich habe Wege gefunden, einen kompletten systemweiten Speicherauszug zu erstellen, aber das ist ein bisschen zu viel.

Gibt es eine Möglichkeit, einen einzelnen Prozess zu löschen? Da es sich um einen Produktionsserver handelt, möchte ich keine schwergewichtigen Werkzeuge und keinen Dienst installieren, der im Hintergrund ausgeführt wird. Im Idealfall möchte ich nur den Prozess abspeichern, den Dump auf meinen eigenen Rechner kopieren und ihn dort debuggen.

    
Michael Stum 22.01.2010, 19:43
quelle

4 Antworten

5

Ja, suchen Sie nach userdump.exe. Sehen Sie sich diesen KB-Artikel an.

    
Paul Betts 22.01.2010, 19:46
quelle
7

Sie können den Windows-Debugger (ntsd oder windbg) an den Prozess anhängen und dann Wenn Sie einen Dump des Prozesses erstellen möchten, können Sie den Befehl .dump verwenden:

%Vor%     
i_am_jorf 22.01.2010 19:46
quelle
2

Ich denke, diese "Antwort" sollte ein Kommentar unter jeffamaphones Antwort sein, aber ich habe nicht genug Reputation, um sie zu kommentieren.

Windows Server 2003 wird mit ntsd ausgeliefert, sodass keine Installation erforderlich ist. Rufen Sie die Prozess-ID des Prozesses ab und hängen Sie ntsd an den Prozess an:

%Vor%

Verwenden Sie dann ntsd, um den Prozess abzulegen:

%Vor%     
Mike 06.11.2012 17:18
quelle
1

Vergessen Sie nicht über procdump von sysinternals.com (leitet zu MS um, seit sie sie vor ein paar Jahren gekauft haben). Sehr kleiner Download.

    
Marc Sherman 07.11.2012 14:55
quelle