2010-01-22 15 views
8

विंडोज विस्टा के बाद से, हमारे पास कार्य प्रबंधक से सीधे प्रक्रिया की मेमोरी डंप बनाने का अच्छा विकल्प है। अफसोस की बात है कि, विंडोज सर्वर 2003 में अभी तक यह विकल्प नहीं है :(मुझे एक पूर्ण सिस्टम-व्यापी मेमोरी डंप करने के तरीके मिलते हैं, लेकिन यह थोड़ा अधिक है।विंडोज सर्वर 2003 में एक प्रक्रिया का मेमोरी डंप बनाना?

क्या एक प्रक्रिया को डंप करने का कोई तरीका है? एक उत्पादन सर्वर, मैं पृष्ठभूमि में चलने वाले किसी भी भारी वजन वाले उपकरण या सेवा को स्थापित नहीं करना चाहता, आदर्श रूप में मैं प्रक्रिया को डंप करना चाहता हूं, डंप को अपनी मशीन पर कॉपी करना चाहता हूं और वहां इसे डीबग करना चाहता हूं।

उत्तर

5

हाँ, Userdump.exe देखने देखें इस KB article

+0

चमकदार! एक जादू की तरह काम करता है! –

7

आप संलग्न कर सकते हैं Windows debugger (ntsd या windbg) प्रक्रिया है, तो जब आप प्रक्रिया आप .dump आदेश का उपयोग कर सकते हैं की एक डंप बनाना चाहते हैं।।:

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

धन्यवाद। मैं विंडबग स्थापित करने से बचने के लिए दूसरा विकल्प चुनता हूं –

2

मुझे लगता है कि यह 'उत्तर' जेफमैफोन के उत्तर के तहत एक टिप्पणी होना चाहिए लेकिन मेरे पास टिप्पणी करने के लिए पर्याप्त प्रतिष्ठा नहीं है।

विंडोज सर्वर 2003 एनटीएसडी के साथ जहाजों को तो कुछ भी स्थापित करने की आवश्यकता नहीं है। प्रक्रिया के प्रक्रिया ID प्राप्त करें और प्रक्रिया के लिए ntsd देते हैं:

C:> ntsd -p 4356 

फिर ntsd का उपयोग प्रक्रिया डंप करने के लिए: sysinternals.com से

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

ProcDump के बारे में मत भूलना (एमएस पर रीडायरेक्ट चूंकि उन्होंने उन्हें कुछ साल पहले खरीदा था)। बहुत छोटा डाउनलोड

संबंधित मुद्दे