में एक विशिष्ट कॉल स्टैक फ्रेम पर रजिस्टर्स मान की जांच कैसे करें I WinDBG में Windows डंप फ़ाइल की जांच कर रहा हूं। मैं कॉल स्टैक फ्रेम को कमांड .frame द्वारा स्विच कर सकता हूं, लेकिन मैंने पाया कि रजिस्टरों में हमेशा अंतिम संदर्भ होता है। मेरा मतलब है, यदि संदर्भ को पुनर्स्थापित करना संभव है जो एक विशिष्ट कॉल स्टैक फ्रेम से संबंधित है जो शीर्ष पर नहीं है?विंडबग
Q
विंडबग
6
A
उत्तर
7
आप एक x64 लक्ष्य डिबगिंग रहे हैं, तो आप उपयोग कर सकते हैं:
.frame /r
फ्रेम में रजिस्टरों को देखने के लिए। यह जानकारी छवि में अवांछित डेटा पर आधारित है, इसलिए यह बहुत विश्वसनीय है। आप संदर्भ को भी बदल सकते हैं:
.frame /c
x86 पर, कोई अनचाहे जानकारी नहीं है इसलिए यह चाल काम नहीं करती है। .frame अभी भी आपको रजिस्टरों के लिए कुछ दिखाएगा, लेकिन यह सही होने की संभावना नहीं है (यह मूल रूप से केवल भाग्य से सही होगा)।
0
findthack में कोशिश करें, जो कॉलस्टैक में प्रत्येक फ्रेम के प्रोलॉग को अलग करके सीएफआई (कॉल फ्रेम जानकारी) प्राप्त करने की तरह है।
http://nick.luckygarden.org/find-this-ptr-within-a-callstack-in-a-dump-file/
समझ गया। मैं केवल अप्रत्यक्ष रूप से स्टैक में रजिस्टरों को ढूंढ सकता हूं। –