2009-08-05 15 views
16

यदि मैं किसी विधि पर ब्रेकपॉइंट सेट करता हूं, तो मैं विज़ुअल स्टूडियो 2008 में ब्रेकपॉइंट हिट होने पर विधि को किस प्रकार कॉल कर सकता हूं?विजुअल स्टूडियो 2008 में सी # के माध्यम से कदम उठाने पर मुझे विधि कॉलर कैसे मिल सकता है?

+0

राइट क्लिक करें और "परिभाषा पर जाएं"? क्या यही मतलब है तुम्हारा? – rball

+1

अहह मेरे नए दिन। –

उत्तर

34

कॉल स्टैक विंडो (डीबग, विंडोज़, कॉल स्टैक) की जांच करें। प्रत्येक प्रविष्टि पर डबल क्लिक करने से आपको कॉलिंग कथन पर ले जाया जाएगा। बाहरी कोड आइटम और अन्य धागे से कॉल दिखाने/अक्षम करने के लिए आप इसे राइट क्लिक भी कर सकते हैं।

+1

इसमें केवल एक ही प्रविष्टि है: जहां ब्रेकपॉइंट है। –

+0

क्या आप वाकई प्रवेश बिंदु नहीं हैं? –

+0

यह प्रवेश बिंदु नहीं है। –

2

जब ब्रेकपॉइंट मारा जाता है, तो आप संपूर्ण कॉल स्टैक देख सकते हैं। आप डीबग मेनू-> विंडोज-> कॉल स्टैक के माध्यम से जाकर उस विंडो को ला सकते हैं।

आप भी इसे शॉर्टकट Alt + Ctrl + C से ऊपर ला सकता है

संपादित करें: आपको ऐसे फ़ंक्शन नाम पर राइट क्लिक करें सकते हैं, और देखने "कॉलर्स ग्राफ़" है, जो आपको बताएंगे कि सभी आपकी विधि के लिए कॉलर। वैकल्पिक रूप से, आप कॉल ब्राउज़र ला सकते हैं (देखें-> अन्य विंडो-> ब्राउज़र पर कॉल करके) और अपनी विधि के नाम की खोज करें।

+0

+ शॉर्ट ctrl + alt + सी और कॉलर्स ग्राफ़ के लिए। – FrenkyB

1

यदि आप कॉल स्टैक विंडो में कुछ भी नहीं देख पा रहे हैं, तो निश्चित रूप से कुछ गलत है। मैं आर-कार्यों के प्रसिद्ध अनुक्रम सुझाव है:

  • पुन: प्रयास करें
  • पुन: संयोजित
  • पुनः प्रारंभ
  • पुनर्स्थापित :)
+0

विजुअल स्टूडियो के साथ पुनर्स्थापित कोई हल्का मामला नहीं है ... –

4

आप कॉल स्टैक में कुछ भी नहीं देख सकते हैं उपयोगकर्ता द्वारा सेट ब्रेकपॉइंट पर, इसका सामान्यतः अर्थ है कि इसे मूल कोड से बुलाया गया था।

एक और मामला जहां यह एक ढेर नहीं मिल सकता है: आपने डीबग को मारा> सभी को तोड़ें और मुख्य धागा प्रतीक्षा/नींद की स्थिति में है, डीबगर को कॉल स्टैक बनाने में समस्या हो सकती है। मेरा मानना ​​है कि डीबगर अपने अंतर्निहित फ़ंक्शन मूल्यांकन के लिए मुख्य धागे का उपयोग करता है।

मिश्रित मोड (देशी & प्रबंधित) कोड डीबगर को जोड़ने (या लॉन्च करने) का प्रयास करें और देखें कि क्या यह सीधे इसे बाहर करता है या नहीं।

1

यदि ब्रेक पॉइंट किसी ईवेंट द्वारा उठाए गए फ़ंक्शन में है, तो हो सकता है कि आपके पास कॉलर पर सीधे कॉल स्टैक न हो, और सभी कोड देखने में सक्षम होना चाहिए, न केवल "बस मेरा कोड"।

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