Visual Studio 2015 प्रोजेक्ट अब डिबग मोड में नहीं चलता है


95

डीबग कॉन्फ़िगरेशन में चलने पर भी मुझे यही मिलता है:

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

मैंने समस्या को हल करने की कोशिश की है, लेकिन कोई भी मानक "ब्रेक पॉइंट्स फायर नहीं करेगा" समाधान ने काम किया है। मैं विचारों से बाहर हूं।

मैंने विन्यास प्रबंधक की जाँच की है और हर परियोजना वहाँ भी डिबग के लिए निर्धारित है।

यहां छवि विवरण दर्ज करें

मैंने "ऑप्टिमाइज़ेशन सक्षम करें" को बंद कर दिया, और मुझे अब "आप एक रिलीज़ बिल्ड डीबगिंग" डायलॉग प्राप्त नहीं कर रहे हैं। यह चलता है और फिर से ब्रेकपॉइंट्स पर रुक जाता है! हालाँकि आउटपुट विंडो इसे स्टार्ट अप में प्रदर्शित करती है:

मॉड्यूल के लिए प्रतीक 'Navigo.exe' लोड नहीं किए गए थे।

  1. डीबग बिल्ड कॉन्फ़िगरेशन का उपयोग करें या डीबग विकल्प को अक्षम करें 'जस्ट जस्ट कोड' सक्षम करें।
  2. डिबगिंग विकल्पों के तहत 'सिंबल' सेटिंग्स की जाँच करें।

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


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

@ हंसपसंद यह मूल समस्या है। ऐसा लगता है कि जैसे ही हमने VS2015 का उपयोग करने के लिए अपग्रेड करना शुरू किया है। मैंने पोस्ट करने से पहले अपने किसी भी "यह काम करेगा" परिवर्तन को वापस कर दिया था। "ऑप्टिमाइज़ कोड" को अनचेक करने से मदद मिली है। अधिक विवरण के लिए प्रश्न 2 में अपडेट देखें।
सेन

क्या आप बता सकते हैं कि आपका समाधान क्या है? वे कौन सी परियोजनाएं हैं, वे किस भाषा में हैं, वे क्या लक्ष्य करते हैं, जो स्टार्टअप परियोजना है?
लुकियन विस्किक

बस फिर से मेरे कोड को सक्षम करें। आप संदर्भित विधानसभाओं को डिबग करने की कोशिश कर रहे हैं जो आपके पास स्रोत कोड नहीं है?
इगोर क्विरिनो 10

3
यदि आप इस मुद्दे के बारे में बग रिपोर्ट को वोट करना चाहते हैं, तो यहां लिंक दिया गया है। https://connect.microsoft.com/VisualStudio/feedback/details/2116788/flag-optimize-is-passed-to-the-debugger-even-while-the-build-settings-optimize-code-is-not- सक्षम-ऑन-एमवीसी-सी-वेब-प्रोजेक्ट-जब-
पैट्रिक

जवाबों:


95

डिबग कॉन्फ़िगरेशन के लिए वास्तविक सेटिंग्स क्या हैं, यह जांचने के लिए कॉन्फ़िगरेशन प्रबंधक का उपयोग करें - यह मेनू पर है → कॉन्फ़िगरेशन प्रबंधक बनाएँ ... - यदि वे रिलीज़ का उपयोग करने के लिए सेट हैं :

विन्यास प्रबंधक

यह भी सुनिश्चित करें कि प्रोजेक्ट DEBUG को सही ढंग से परिभाषित कर रहा है, और "ऑप्टिमाइज़ कोड" की जाँच नहीं की गई है:

गुण


2
मैंने बस वहां चेक किया और वे सभी डिबग के लिए तैयार हैं। मैंने पोस्ट को स्क्रीनशॉट के साथ अपडेट कर दिया है। कोई अन्य विचार?
सेन

1
मेरे सवाल का संपादन किया। ऑप्टिमाइज़ कोड को चेक किया गया था, यह अनचेक करने से मदद मिलती है। लेकिन विवरण के लिए प्रश्न देखें।
सेन

1
@ लगता है जैसे किसी ने आपकी डिबग बिल्ड सेटिंग्स को गलत तरीके से बनाया है। अनुकूलित कोड के साथ एक डीबग बिल्ड कोई मतलब नहीं है। प्रतीकों की समस्या के रूप में: शायद किसी ने डिबग बिल्ड के लिए उन्हें अक्षम कर दिया है? बिल्ड सेटिंग्स में "उन्नत" बटन दबाएं और जांचें कि डिबग बिल्ड में "डीबग इन्फो" "पूर्ण" पर सेट है।
श्मशान

6
ऑप्ट-चेक ऑप्टिमाइज़ कोड ने चाल चली। यकीन नहीं है कि यह कैसे शुरू करने के लिए जाँच की जाती है, लेकिन एक बार जब सब कुछ बंद हो गया तो फिर से काम करना शुरू कर दिया। अन्य सभी डीबग सेटिंग्स सही थीं, यह केवल एक ही अजीब था। मुझे अब "सिंबल लोडेड नहीं" संदेश भी नहीं मिला।
सेन

94

यह मेरे साथ कुछ परियोजनाओं पर भी हुआ है। मैंने अपनी बिल्ड सेटिंग्स की समीक्षा की, जैसा कि स्टुअर्ट ने सुझाव दिया था । हालाँकि, 'ऑप्टिमाइज़ कोड' नहीं था मेरी बिल्ड सेटिंग में सक्षम । इसलिए मैंने इसे सक्षम किया और परियोजना को बचा लिया। फिर मैंने उसे अनियंत्रित किया और फिर से बचाया। समस्या सुलझ गयी।

कुछ प्रकार की बग है, जिसके कारण --optimize+ध्वज डिबगर को पास किया जाता है। बग को ठीक करने तक इसे सक्षम करना और फिर इसे अक्षम करना एक आसान समाधान है।


1
मैंने इसे पहले IntelliJ IDE में देखा है, लेकिन अब तक विजुअल स्टूडियो में कभी नहीं देखा। अजीब तरह से, यह मेरे लिए भी काम किया।
ZaneDarken

1
2017 अपडेट: अभी भी विजुअल स्टूडियो 2015 अपडेट में इस मुद्दे को देखकर 3. स्वीकृत जवाब ने समस्या को ठीक नहीं किया; इस उत्तर ने किया।
बजे Lews थेरिन

1
इस जवाब ने मेरा डिबग एनवायर भी तय कर दिया। धन्यवाद !
bob.mazzo

1
वाह! मुझे यह सटीक समस्या थी और यह मेरे लिए भी काम करता है। वीएस 2015 यू 3। अविश्वसनीय ...
अभयमार्केज

1
VS2017 समुदाय, अभी भी इस मुद्दे के साथ। इस समाधान के लिए धन्यवाद
विलियम बोर्गो

20

अद्यतन 1 को लागू करने के बाद मेरे साथ ऐसा होने लगा। मौजूदा परियोजनाओं ने यह दिखाना शुरू कर दिया, और मैं इसे एक नए प्रोजेक्ट के साथ दोहरा सकता हूं। सभी कॉन्फ़िगरेशन DEBUG पर सेट है, और ऑप्टिमाइज़ की जाँच नहीं की गई है।

किकर, पहली बार (या एक साफ के बाद) परियोजना को चला रहा है, बिना किसी संदेश के, बस ठीक चलता है। रोकना, फिर परियोजना को फिर से चलाना (ध्यान दें - परियोजना का पुनर्निर्माण नहीं है ) संवाद प्रदर्शित करेगा।

एकमात्र उपाय बस जस्ट कोड कोड को बंद करना है - जो एक हैक लगता है, क्योंकि यह बिना किसी समस्या के अपडेट 1 पर पिछले था।


6
जो इसके लायक है, उसके लिए Microsoft समर्थन ने समस्या को पुन: उत्पन्न किया है और जांच कर रहा है। जैसे ही मैं सुनता हूं, मैं वापस रिपोर्ट करूंगा / जवाब दूंगा।
जॉन टी।

2
यहां समान स्थिति और लक्षण, VS2015 अपडेट के बाद दिखाई दिए। प्रत्येक डिबग सत्र से पहले क्लीन रनिंग को वर्कअराउंड के रूप में उपयोग किया जा सकता है क्योंकि वास्तव में यह उसके बाद पहली बार सही तरीके से काम करता है। सिर्फ एक पुनर्निर्माण करना पर्याप्त नहीं है, क्लीन की आवश्यकता है।
एरोनानअमर्स

2
Microsoft का शब्द है कि यह एक ज्ञात समस्या है (यह मूल रूप से डीबगर टीम में गया था, लेकिन यह निर्धारित किया गया था कि यह एक बिल्ड समस्या थी, और अब प्रोजेक्ट सिस्टम टीम के हाथों में है। इस मुद्दे पर अन्य बग खुले हैं, और यह है) रेटेड प्राथमिकता 1, इसलिए अगले अद्यतन के लिए ट्रैक पर होना चाहिए। हालांकि जैसा कि उम्मीद की जाएगी, यह कब जारी किया जाएगा (या वास्तव में अपडेट में क्या है) के रूप में कोई वादा नहीं किया जा सकता है। इसलिए यह ज्ञात है और काम किया जा रहा है। कम से कम डिबगिंग जनरल ऑप्शन में "जस्ट जस्ट कोड को सक्षम करें" को बंद करने से लगता है कि यह अभी के लिए एक काम है।
जॉन टी।

क्या इस मुद्दे की कोई कड़ी है ताकि हम प्रगति कर सकें?
स्काईव्राकोड


13

यदि किसी भी उल्लेखित समाधान ने मदद नहीं की है, तो अपने प्रोजेक्ट की असेंबलीइन्फो को चेक करें। ऐसा लगता है जैसे यह संकलक के डिबग / रिलीज़ विकल्पों को ओवरराइड करता है।

मेरे पास फ़ाइल में यह लाइन मेरे मामले में थी (विरासत परियोजना, कोई विचार नहीं है कि यह कैसे मिला)। इसे हटाने से समस्या हल हो गई:

[assembly: System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]

2
इसके लिए धन्यवाद। मैं एक ऐसी परियोजना पर काम कर रहा हूं, जहां मेरे ग्राहक ने अपना मूल स्रोत कोड खो दिया है, इसलिए मुझे एक डिकॉम्पेलर का उपयोग करके इसे उत्पन्न करना पड़ा। मेरा एकमात्र अनुमान है कि डिकंपाइलर ने इस लाइन को अंदर रखा।
jebar8

हाँ, यह मेरे मामले में भी कारण हो सकता है। साझा करने के लिए धन्यवाद।
बजे दिमित्री रोटे

10

मेनू का चयन करें डिबगविकल्प और दबाएं दबाएं जेआईटी अनुकूलन विकल्प। इससे मेरा काम बनता है।

स्रोत: https://connect.microsoft.com/VisualStudio/feedback/details/2116788/flag-optimize-is-passed-to-the-debugger-even-वर्ड-the-build-ettings-optimize-code-is-is नहीं-सक्षम-ऑन-MVC-सी वेब परियोजनाओं-जब-का उपयोग कर-बस-मेरी-कोड


लिंक (प्रभावी रूप से) टूटा हुआ है: "माइक्रोसॉफ्ट कनेक्ट रिटेन बीट रिटायर्ड"
पीटर मोर्टेंसन

9

मैंने इस मुद्दे का भी सामना किया। जो फिक्स के लिए काम किया गया था, वह केवल मेरी परियोजनाओं को साफ ( Build > Clean Solution) और पुनर्निर्माण ( Build > Rebuild Solution) करना था।


क्या आप विस्तार से समझा सकते हैं? जैसे कि इसे कैसे करना है (मेन्यू इनवॉइस करने के लिए, आदि)?
पीटर मोर्टेंसन

5

पिछले उत्तरों में से किसी ने भी मेरे लिए काम नहीं किया। IIS को पुनरारंभ करके इसे ठीक किया गया।


3

स्टुअर्ट के उत्तर में केवल एक साइड नोट जोड़ना :

सुनिश्चित करें कि आप एक ही निर्माण सेटिंग्स के लिए किसी भी निर्भर परियोजनाओं की जाँच करें। यदि आपकी मुख्य परियोजना में उचित सेटिंग्स हैं, तो आपको वही संदेश प्रांप्ट मिलेगा, लेकिन आपकी निर्भर परियोजनाएँ नहीं हैं। यह स्पष्ट समझ में आता है, लेकिन यह पहली बात नहीं थी।


3

मेरे मामले में समस्या यह थी कि मेरे ASP.NET परियोजना के गुण वेब टैब में IIS प्रोजेक्ट URL गलत URL पर सेट किया गया था।

यह http: // लोकलहोस्ट की ओर इशारा कर रहा था जिसे मैं प्रोजेक्ट की एक अलग कॉपी के साथ उपयोग कर रहा था। मेरे द्वारा हल किए गए समाधान का पता वास्तव में मेरे स्थानीय IIS पर http: // localhost: 90 के रूप में कॉन्फ़िगर किया गया था ।

सही पते पर बदलने से समस्या ठीक हो गई।

यहां छवि विवरण दर्ज करें


2

मैंने इस सूची में सब कुछ करने की बहुत कोशिश की, लेकिन अंत में मैंने समाधान गुण खोलकर और "मल्टीपल स्टार्टअप प्रोजेक्ट्स" से "सिंगल स्टार्टअप प्रोजेक्ट" और फिर से वापस स्विच करके यह तय किया।

  1. समाधान पर राइट-क्लिक करें और "गुण" चुनें
  2. "सामान्य संपत्तियों" के तहत "सिंगल स्टार्टअप प्रोजेक्ट" के लिए चयन "मल्टीपल स्टार्टअप प्रोजेक्ट्स" को बदलें
  3. ओके पर क्लिक करें
  4. डिबगिंग चलाएं
  5. डिबगिंग समाप्त करें और चरण 1-3 दोहराएं, लेकिन "कई स्टार्टअप प्रोजेक्ट्स" पर वापस जाएं
  6. कई प्रोजेक्ट्स के साथ फिर से डिबगिंग चलाएँ

2

मेरे पास एक ही मुद्दा था ... कोई फर्क नहीं पड़ता कि मैंने क्या किया - कुछ भी काम नहीं किया।

यह एक नई खाली परियोजना थी जो समस्या थी। मैंने परियोजना को हटा दिया और एक नई परियोजना जोड़ दी - नई परियोजना का दूसरा नाम होना था ; अगर मैंने एक ही नाम का उपयोग किया तो त्रुटि फिर से सामने आई - एक रिबूट के बाद भी, स्वच्छ और पुनर्निर्माण ... यह दृश्य स्टूडियो 2015 में एक बग होना चाहिए।


2

मेरे लिए, यह एक निजी NuGet सर्वर से एक NuGet संदर्भ था । मुझे नहीं पता कि यह कैसे संकलित किया गया था, लेकिन परियोजना के संदर्भ के संदर्भ को बदलने से मुझे समस्या का सामना करना पड़ा।


1

मैंने अपना विजुअल स्टूडियो 2012 प्रो प्रोजेक्ट विजुअल स्टूडियो 2015 एक्सप्रेस में खोला है और उसी मुद्दे पर था।

मैंने अपने समाधान गुणों → कॉन्फ़िगरेशन गुणों की जाँच की , और पता लगाया कि एक परियोजना रिलीज़ और x86 पर सेट थी।

मैंने इसे डीबग और किसी भी सीपीयू में बदल दिया , और प्रॉम्प्ट चला गया।


1

मेरे मामले में, मैं आउटलुक के लिए एक VSTO प्लगइन विकसित कर रहा था , और आउटलुक गलती से DLL फ़ाइल के रिलीज़ संस्करण को लोड कर रहा था जिसे मैंने हाल ही में अपने इंस्टॉलर का परीक्षण करते समय स्थापित किया था।

ऐसा लगता है कि विजुअल स्टूडियो उस डीएलएल का उपयोग करने की कोशिश कर रहा था जो मुझे उम्मीद थी कि डीबग के बजाय। फिक्सिंग जो आउटलुक द्वारा DLL फ़ाइल लोड किया जा रहा है मेरे लिए यह तय किया।


0

मेरे दूसरे उत्तर को यहाँ से कॉपी करना ।

जैसा कि @romanoza द्वारा उल्लेख किया गया है, Microsoft ने बग रिपोर्ट को निम्नलिखित जानकारी के साथ अद्यतन किया है:

डिबग सेटिंग को अनचेक करें -> विकल्प -> मॉड्यूल लोड पर केवल JIT अनुकूलन को दबाएं (केवल प्रबंधित)

यह वर्कअराउंड है। वे बाद में कहते हैं:

हम लोगों को इसे अनियंत्रित छोड़ने की सलाह देते हैं क्योंकि यह अनियंत्रित होने से प्रदर्शन और विशिष्ट परिदृश्यों में मेरे कोड के व्यवहार दोनों में सुधार होगा।

अंत में, पावती:

यह एक बग है कि यह उस सेटिंग के साथ काम नहीं करता है जो सक्षम है और हम उस स्थिति के लिए एक फिक्स पर काम कर रहे हैं जब कुछ ग्राहक अभी भी उस सेटिंग को चालू करना चाहते हैं।




0

संकल्प चरण:

  • अपमानजनक परियोजना के गुण पृष्ठ की बिल्ड सेटिंग्स पर जाएं।

  • "उन्नत ..." बटन पर नीचे स्क्रॉल करें।

  • सुनिश्चित करें कि "डीबग जानकारी:" है नहीं  करने के लिए सेट "कोई नहीं"

    मैं आपको पूर्ण विकल्प का उपयोग करने की सलाह देता हूं ।


उन सभी असेंबली के लिए ऐसा करना याद रखें जिन्हें आप डीबग करना चाहते हैं।
इगोर क्विरिनो

0

पैट्रिक द्वारा लिंक को प्रश्न के रूप में देखने के बाद , किसी व्यक्ति ने IIS एक्सप्रेस में साइट को रोकने के लिए वर्कअराउंड नोट किया । मैं दृश्य स्टूडियो में डीबगर को रोकने के बाद, बस इसी तरह की समस्या को उत्पन्न होने से रोकने में सक्षम था।

हालाँकि, मैं इसे और अधिक देख रहा था, और मुझे विश्वास है कि यह डिबगर के लिए 'एडिट एंड कंटिन्यू' सेटिंग से भी संबंधित हो सकता है। जब मैंने मेनू टूल → विजुअल स्टूडियो के टूल्स टूल्स ... विकल्प में अक्षम कर दिया , तो मुझे अब समस्या नहीं थी। लेकिन फिर यह आपको एडिट और कंटिन्यू फीचर का इस्तेमाल करने से रोकेगा , इसलिए मुझे यकीन नहीं है कि यह आपके लायक है।

मेनू उपकरणविकल्पडीबगरसंपादित करें और जारी रखें (सामान्य सूची के नीचे स्क्रॉल करें) → संपादित करें और जारी रखें चेकबॉक्स को अनचेक करें

मैंने भी अपडेट 1 को स्थापित करने के बाद अचानक इसका अनुभव किया, लेकिन यह सिर्फ यह हो सकता है कि पहली बार में मेरी यह सेटिंग थी ... मुझे यकीन नहीं है।


0

यदि आपको बिना किसी देरी के आगे बढ़ते रहना है, तो पॉपअप से अंतिम विकल्प चुनें और सभी पहले की तरह ही चलेंगे।

यहां छवि विवरण दर्ज करें


स्क्रीनशॉट के लिए JPEG इमेज सबसे अच्छा विकल्प नहीं हैं। क्या आप इसे (कुरकुरा) पीएनजी संस्करण (या जीआईएफ) से बदल सकते हैं?
पीटर मोर्टेंसन

0

यह एक अजीब चेतावनी थी।

समाधान का पुनर्निर्माण जरूरी सभी DLL फ़ाइलों (विशेष रूप से आश्रित परियोजनाओं से कॉपी किए गए) को स्पष्ट नहीं करेगा।

हालांकि, निर्भरता परियोजना के पुनर्निर्माण ने इस चेतावनी को दूर कर दिया।

मुझे विजुअल स्टूडियो 2015 अपडेट 3 के साथ इसका सामना करना पड़ा।


0

मेरा समाधान अन्य सभी से थोड़ा अलग था और थोड़ा अनूठा है।

मैं एक ऐसी वेबसाइट के साथ काम कर रहा हूं जिसमें प्रबंधित कोड और ASP क्लासिक का मिश्रण है , दोनों एक ही विधानसभा को संदर्भित करते हैं। विजुअल स्टूडियो शिकायत कर रहा था कि मेरी प्रबंधित DLL फ़ाइल रिलीज़ बिल्ड थी।

मेरी असेंबली में यह समस्या एक अपवाद नहीं थी, लेकिन इसे एक एएसपी क्लासिक पेज द्वारा इंटरोप के माध्यम से फेंका जा रहा था। विजुअल स्टूडियो इस डिबगिंग को संभालने में सक्षम नहीं था और त्रुटि संदेश प्रदर्शित करता था। प्रबंधित कोड से फेंके गए समान अपवाद ने डिबगर को अपेक्षित रूप से लाया होगा।

मेरे प्रबंधित विधानसभा के निर्माण में समस्या को ठीक करते हुए सब कुछ तय कर दिया।

यह सब अब समझ में आता है कि मैं बड़ी तस्वीर को देखता हूं, लेकिन उस समय, त्रुटि संदेश ने मुझे बहुत गहरे रास्ते पर ले जाया, और मैंने उत्तर में सब कुछ आजमाया जब तक कि मेरे पास "आह-हा!" पल।


0

मैंने दो दिन बिताए, और ऐसा लग रहा है कि रीसेट स्टूडियो द विजुअल स्टूडियो 2017 एक्सपेरिमेंटल इंस्टेंस ने मेरी मदद की।


वह विकल्प कहाँ स्थित है ( अपने उत्तर को संपादित करके जवाब दें , यहाँ टिप्पणियों में नहीं)?
पीटर मोर्टेंसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.