2010-05-06 12 views
14

मुझे पता है कि सी # वीएस 2008 में कोड संपादित करने का कोई तरीका है या नहीं, जब यह ब्रेकपॉइंट मारा गया है और मैं कोड के माध्यम से चल रहा हूं ... क्या मैं संशोधित कर सकता हूं कोड (जैसे वैरिएबल में वैल्यू या यदि मेरी स्टेपथ्रू लाइन एक कथन को हिट करने वाली है ... क्या मैं if स्टेटमेंट को संशोधित कर सकता हूं .... आदि)? अब तक, मुझे वीएस चलाने, कोड को संशोधित करना बंद करना है, फिर F5 दबाएं और ब्रेकपॉइंट फिर से हिट होने तक प्रतीक्षा करें।डीबग मोड में विजुअल स्टूडियो 2008 में कोड संपादित करना

जब ब्रेकपॉइंट हिट करता है, और मैं कोड के माध्यम से चल रहा हूं, और मैं कोड को संपादित करने का प्रयास करता हूं, तो मुझे एक संदेश मिलता है "डीबगर को कोड की डीबगर की पहले से चल रही प्रक्रिया से जुड़ा हुआ होने पर परिवर्तन की अनुमति नहीं है निर्माण या रन समय पर अनुकूलित किया गया था। "

+0

क्या आपने इसे आजमाया? – SLaks

+0

क्या भाषा? – SLaks

+0

मैं सी # का उपयोग कर रहा हूँ। मैंने कोशिश की लेकिन मुझे एक संदेश मिलता है कि "डिबगर को डीबग किए जाने वाले कोड की पहले से चल रही प्रक्रिया से डीबगर को जोड़ा गया है, तो परिवर्तन की अनुमति नहीं है, जिसे बिल्ड या रन टाइम पर अनुकूलित किया गया था।" – user279521

उत्तर

6

मुझे पता है कि डीबग बिल्ड में संपादन + जारी क्यों किया जाएगा, इसके कुछ कारण हैं। पहला और सबसे महत्वपूर्ण 64-बिट ऑपरेटिंग सिस्टम है, ई + सी केवल 32-बिट कोड के लिए काम करता है। परियोजना + गुणों के साथ इसे ठीक करें, टैब बनाएं, प्लेटफ़ॉर्म लक्ष्य = x86।

यह भी एक विकल्प है जो बंद कर दिया गया हो सकता है। उपकरण + विकल्प, डिबगिंग, संपादित करें और जारी रखें, चेकबॉक्स सक्षम करें।

यदि यह मदद नहीं करता है, तो हमें आपके द्वारा डिबगिंग किए जाने वाले कोड के बारे में कुछ और बताएं, प्रोजेक्ट टेम्पलेट जिसे आपने प्रोजेक्ट शुरू किया था, आपने ब्रेक करने के लिए डिबगर कैसे प्राप्त किया था और एक स्टैक ट्रेस से कॉपी किया गया था कॉल स्टैक विंडो।

+0

लक्ष्य प्लेटफ़ॉर्म "कोई भी था सी पी यू"। मैं x86 में बदल गया, ई और सी अभी भी काम नहीं करता है। उपकरण + विकल्प, डिबगिंग। ई और सी चेकबॉक्स सक्षम है। – user279521

+0

मैं पीछे कोड में सी # कोड डीबग कर रहा हूं। प्रोजेक्ट टेम्पलेट WebForm.aspx के रूप में। मैंने ब्रेक करने के लिए डीबगर प्राप्त करने के लिए ब्रेकपॉइंट लगाया। मैं स्टैक ट्रेस कॉपी कैसे प्राप्त कर सकता हूं? – user279521

+2

@user, इसे पढ़ें: http://whyiamright.wordpress.com/2007/12/20/aspnet-edit-and-continue-in-visual-studio-2005/ –

4

हाँ, आप कर सकते हैं।
इसे Edit and Continue कहा जाता है।
ध्यान दें कि इसमें कुछ limitations हैं।

EDIT: आपको डीबग बिल्ड पर स्विच करने की आवश्यकता है।

+0

मैं "संपादित करें और जारी रखें" कैसे करूं? – user279521

+0

डीबगर में तोड़ें (या तो ब्रेकपॉइंट दबाएं या पॉज़ बटन दबाएं) और * कोड * संपादित करें * प्ले बटन या एफ 5 (या एफ 10 या एफ 11 के साथ जारी रखें) के साथ * जारी रखें – Paolo

0

इस प्रश्न के उत्तर में:

मैं कोड (जैसे एक चर में या अगर मेरे stepthrough लाइन के बारे में एक अगर बयान हिट करने के लिए है मूल्य के रूप में संशोधित कर सकते हैं ... मैं संशोधित कर सकते हैं अगर कथन .... आदि)?

आप एक नया मूल्य एक चर में सीधे पॉप नहीं कर सकते, लेकिन आप क्या कर सकते यह है:

  1. सेट एक ब्रेकपाइंट
  2. जब कि ब्रेकप्वाइंट मारा जाता है, बाईं ओर स्थित तीर पर क्लिक करें मार्जिन और पिछले एक लाइन
  3. अब आप परिस्थितियों को बदलने के लिए (उदाहरण के लिए, आप एक नया मूल्य के लिए एक चर सेट कर सकते हैं, जोड़ सकते हैं/एक संग्रह से आइटम निकालने, आदि) कोड जोड़ सकते हैं
करने के लिए इसे ऊपर खींचें

संपादित करें & सक्षम करने के बारे में अन्य उत्तरों को देखें - विशेष रूप से, सुनिश्चित करें कि आप डीबग मोड में हैं।

0

इस समस्या को हल करने के लिए मैंने निम्नलिखित किया ...

BUILD> कॉन्फ़िगरेशन मैनेजर

सक्रिय समाधान विन्यास: डीबग परियोजना संदर्भ विन्यास: डीबग

तो उपकरण> विकल्प> डिबगिंग> संपादित करें & जारी सुनिश्चित करें संपादित & बनाने जारी

चयन किया जाता है तो निर्मित> स्वच्छ समाधान फिर निर्मित> पुनर्निर्मित समाधान

फिर डीबग शुरू करें, फिर रोकें, फिर आपका कोड संपादन योग्य होना चाहिए

1

एक चर के मान को संशोधित करने या ब्रेक मोड में एक संपत्ति सेट करने के लिए तत्काल विंडो पर जाएं, नया मान सेट करें, और हिट रिटर्न उदा।

strValue = "newValue" 
Calendar1.Enabled = true 

एक मूल्य पुनर्प्राप्त करने के लिए आप इसे विंडो ई.ई. पर प्रिंट कर सकते हैं।

?strValue 
?Calendar1.Enabled 
1
  1. अपना ऐप चलाने से रोकें।
  2. टूल्स> विकल्प> डिबगिंग> संपादित करें और
  3. अक्षम करें "संपादित करें और जारी रखें सक्षम करें" अक्षम करें।
संबंधित मुद्दे