“ब्रेकपॉइंट वर्तमान में हिट नहीं होगा। स्रोत कोड मूल संस्करण से अलग है। " इसका क्या मतलब है?


513

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

पृथ्वी पर संदेश का क्या अर्थ है? क्या मूल संस्करण? यदि मैंने अभी समाधान खोला है और कोड में कोई परिवर्तन नहीं किया है, तो 'मूल संस्करण' कैसे हो सकता है?


36
ब्रेक-पॉइंट
lexu को

क्या आप विज़ुअल स्टूडियो के किसी अन्य संस्करण में लिखा गया प्रोजेक्ट खोल रहे हैं?
महेश वेलगा

2
यह एक वेबसाइट परियोजना है। इसे स्पष्ट रूप से बनाने की कोई आवश्यकता नहीं होनी चाहिए। इसे उपयोग पर संकलित करना चाहिए। मुझे संदेह है कि वीएस वेबसाइट का निर्माण नहीं कर सकता है, लेकिन यह मुझे नहीं बता रहा है! महेश - नहीं, वीएस के सभी एक ही संस्करण।
डेविड

मेरे मामले में .. मेरे पास एक ही कोड की अलग-अलग रिलीज़ हैं (उदाहरण के लिए test.cs लाइव संस्करण और devolopment संस्करण पर .. जब मैंने devolopment संस्करण खोला और testpoint पर ब्रेकपॉइंट लगा दिया। मैंने एक ही त्रुटि प्राप्त की, लेकिन मुझे पता चला कि मैंने बिंदु परीक्षण परीक्षण किया है .cs वर्ग जो लाइव वर्जन से संबंधित है, भटकाव नहीं है, इसलिए जाँच करें कि सीएस पहले से ही समाधान के निर्माण में है)
dankyy1

5
पुनर्निर्माण के मुकाबले बिन और obj निर्देशिकाओं को हटाना मेरे लिए काम किया।
ऐकान यिसात

जवाबों:


277

जैसा कि यह कहा गया है, "स्रोत कोड मूल संस्करण से अलग है"।

समाधान एक्सप्लोरर के अंदर प्रोजेक्ट फ़ोल्डर पर राइट क्लिक करें और चुनें Clean। प्रोजेक्ट का एक नया संस्करण बनाएँ और ब्रेकप्वाइंट फिर से काम करेगा!


120
स्वच्छ का उपयोग हमेशा काम नहीं करता है। मुझे फिर से काम करने के लिए अपने बिन फ़ोल्डर में सब कुछ मैन्युअल रूप से हटाना पड़ा।
कार्रा

3
मैंने गलती से अपने बिन फ़ोल्डर में एक DLL का संदर्भ दिया था। संदर्भ पथ को ठीक करना।
ब्रैड उरानी

39
मेरे लिए, यहां तक ​​कि बिन और obj फ़ोल्डरों को हटाने से काम नहीं चला। मुझे Visual Studio को भी पुनः आरंभ करना था।
d512

1
समाधान खोजने के लिए हर दिन खर्च करें। एक समाधान प्रदान करने के लिए एक टन धन्यवाद।
रास

8
मैंने VS को बंद कर दिया है, सभी बिन और obj फोल्डर को डिलीट कर दिया है, सब कुछ फिर से बनाया है, डबल चेक बिल्ड कन्फिगरेशन, बिल्ड सक्सेसफुल है। कोई पाँसा नहीं। साधारण चीजें इस जटिल नहीं होनी चाहिए। >: |
स्नार्फ

129

यदि आपने डीबग बिल्ड कॉन्फ़िगरेशन में DLL प्रोजेक्ट को अनचेक किया है , तो आपका नया कोड कभी नहीं बनाया जाएगा!

पर जाएं Build --> Configuration Manager ...(VS2010 में) और यदि कोड आप डिबग करने के लिए कोशिश कर रहे हैं के साथ इस परियोजना वर्तमान बिल्ड विन्यास के लिए चेक किया गया है की जाँच करें।


सुझाव ओलिवर के लिए धन्यवाद। यह निश्चित रूप से यहां नहीं हो रहा है, अगर मेरी कोई परियोजना नहीं बन रही है, तो मैं बहुत जल्दी नोटिस करूंगा।
डेविड

3
मेरे पास बिल्कुल वही मुद्दा था, केवल कुछ अनियंत्रित नहीं था। यह सिर्फ x86 के लिए उस संवाद में निर्मित हुआ था, जबकि मेरी स्थानीय मशीन x64 है! इसलिए मैंने Any CPUविकल्प का चयन किया और यह फिर से काम करता है।
जेपी हेल्लेमन्स

3
डीबग कॉन्फ़िगरेशन से बिना किसी वैध कारण के प्रोजेक्ट्स को हटाना एक कार्डिनल पाप होना चाहिए, क्योंकि उस कॉन्‍फ़िगरेशन का उपयोग CI बिल्ड मशीन द्वारा किया जा सकता है (मुझे पता है कि यह यहाँ है), इसलिए अंततः इसे पास कर सकते हैं जब इसे विफल होना चाहिए। मुझे पता है कि यह कई बिल्ड चरणों में से एक हो सकता है लेकिन फिर भी ... @ मुझे उम्मीद है कि टीम के सदस्य ने आपको कुछ बिस्कुट खरीदे होंगे! :)
फेबचेज़ ला वेचे

मुझे यह समस्या तब हुई जब मैंने AnyCPU के बजाय x86 के निर्माण के लिए स्विच किया। इसने कुछ अज्ञात कारणों से परियोजनाओं को हटा दिया।
एडम पेडले

प्रोजेक्ट को बिल्ड इन कॉन्फ़िगरेशन मैनेजर के लिए सूचीबद्ध किया गया है, इसलिए इससे मुझे डर नहीं लगा है :(
Ortund

43

मेरे लिए यह एक वेबसाइट पर काम करते समय था। इन अस्थायी फ़ोल्डरों को साफ करने के बाद मुझे उचित कंपाइलर त्रुटियां वापस मिल गईं:

  • C:\Documents and Settings\%username%\AppData\Local\Temp\Temporary ASP.NET Files
  • C:\windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files

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


2
विंडोज़ निर्देशिका में अस्थायी फ़ाइलों को खाली करना मेरे लिए काम करता है, चीयर्स!
क्रिसफ्लेचर

7
मैं बस एक समान उत्तर जोड़ना चाहता था - सुनिश्चित करें, कि आपके प्रोजेक्ट की dll की कोई भी पुरानी प्रतिलिपि ASP.NET उपयोग करने वाले किसी भी अस्थायी फ़ोल्डर में नहीं पड़ी है, जैसे C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ अस्थाई ASP.NET फाइलें - जैसा कि उल्लेख किया गया है - लेकिन यह भी C: \ Windows \ Microsoft.NET \ फ्रेमवर्क_64_ \ v4.0.30319 \ अस्थाई ASP.NET फ़ाइलें । मैं उन प्रतियों की खोज करने के लिए सब कुछ का उपयोग करता हूं ।
ओलिवर

12
बस एक त्वरित संकेत: %localappdata%खोज बॉक्स में टाइपिंग आपको सीधेC:\Documents and Settings\%username%\AppData\Local
dav_i

1
इस बात की पुष्टि कर सकता है कि मेरे लिए विजुअल स्टूडियो 2013 में एक webservice प्रोजेक्ट पर काम किया गया है।
मूरी

यह सब किया था, लेकिन यह मदद करने के लिए प्रतीत नहीं होता है। मैं यह देखकर वास्तव में बहुत उत्साहित था।
ऑर्टुंड

40

क्या आपने कभी ऐसा किया?

क्या आप अंतिम सफल बिल्ड को जारी रखना और चलाना चाहेंगे?

यदि आपने बॉक्स पर टिक किया है और "हां" दबाया है, तो आपको अंतिम सफल निर्माण मिलेगा, भले ही आपका प्रोजेक्ट संकलित न हो। इसका मतलब यह है कि जब भी आप एक ब्रेकपॉइंट सेट करते हैं, तो आपको वह त्रुटि मिलेगी।

इस मान को बदलने का प्रयास करें:

  • उपकरण
    • विकल्प
      • परियोजनाओं और समाधान
        • बनाएँ और चलाएँ
          • रन पर, जब निर्माण या परिनियोजन त्रुटियां होती हैं: लॉन्च न करें

मुझे नहीं लगता कि मैंने ऐसा किया था। इस लिखाई के लिए धन्यवाद। इसने मुझे संकेत दिया कि इसका क्या अर्थ है!
डेविड

11
विज़ुअल स्टूडियो के पास अब दशकों तक यह विकल्प था (कम से कम VS98 के पास)। मुझे कभी समझ में नहीं आया कि कोई अंतिम सफल निर्माण क्यों चलाना चाहेगा। आखिरकार, अगर मैं यही चाहता था, तो मैंने इसे सीधे लॉन्च किया, क्योंकि मैं वैसे भी डिबग नहीं कर सकता था। लॉन्च न करें एक अधिक समझदार डिफ़ॉल्ट होगा।
ओरेगनगॉस्ट

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

3
हो सकता है कि अगर उन्हें अचानक से अपनी श्रेष्ठता दिखानी पड़े। वे f5 हिट कर सकते हैं और जैसे "आप देखते हैं, यह काम करता है!"
गीगाला

33

के लिए जाओ

  • उपकरण
    • विकल्प
      • डिबगिंग
        • सामान्य

मूल संस्करण से बिल्कुल मेल खाने के लिए स्रोत फ़ाइलों को अनचेक करें


17
@Rachmad यह समाधान काम करता है। लेकिन ऐसा लगता है कि यह पूर्ण समाधान नहीं है, क्योंकि इसका मतलब है कि हमारी स्रोत फाइलें मूल संस्करण से बिल्कुल मेल नहीं खाती हैं
onmyway133

यह ठीक वही है जो मैं @entropy द्वारा देख रहा था वह सही है। हालांकि यह ब्रेकपॉइंट्स को सेट करने की अनुमति देता है, तथ्य यह है कि उपयोग किए जा रहे स्रोत पीडीबी का उपयोग नहीं किया जा रहा है। सबसे अच्छा समाधान है कि ठीक करें। ऐसे समय में जो नहीं किया जा सकता है, यह बहुत अच्छा काम करता है।
जेम्सजी

इस अनियंत्रित के साथ भी, निष्पादन ब्रेकपॉइंट को हिट नहीं करता है और त्रुटि बनी रहती है
Ortund

12
यह इस समस्या का हल नहीं है बल्कि एक समाधान है। जाहिर है कि मैं डिबगर में पुरानी फाइलों के साथ काम नहीं करना चाहता।
ओबी वान

2
@ ओबीवन स्पष्ट नहीं है। मैं मामूली संपादन करना पसंद करता हूं और स्रोत और बिल्ड को जानने के बाद भी डिबगिंग जारी रखता हूं।
एलन बलजे

30

रिलीज़ के बजाय समाधान कॉन्फ़िगरेशन में डीबग का चयन करें

मेनू का स्क्रीनशॉट


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

डीबग बिल्ड कॉन्फ़िगरेशन में भी प्रोजेक्ट के लिए अक्षम होना संभव है। बिल्ड कॉन्फ़िगरेशन की एक परीक्षा आवश्यक है, डीबग / रिलीज़ कॉन्फ़िगरेशन के बीच फ्लिप-फ़्लॉपिंग व्यर्थ है।
असद सईदुद्दीन

यह मेरे लिए भी था। कोई फायदा नहीं हुआ, अन्य संदर्भित समाधानों के पुनर्निर्माण की सफाई की कोशिश की। ध्यान नहीं दिया समाधान मुझे चेहरे पर घूर रहा था
एडम हे

मेरे साथ यही हुआ है - मैं अपनी परियोजना का निर्माण कर रहा था और अपने dlls को बार-बार बदल रहा था लेकिन समस्या अभी दूर नहीं होगी। मुझे एहसास हुआ कि कोड रिलीज़ मोड में बनाया जा रहा था, जब मैं dlls को / bin / debug फ़ोल्डर से बदल रहा था। मूर्ख में।
डिस्प्लेनाम

मैं एक ऐसी प्रक्रिया से जुड़ना चाहता था जो रिलीज़ मोड में निर्मित हो। डिबग पर स्विच करने से मेरी समस्या हल हो गई।
पाँच फ

27

वी.एस. में "आउटपुट" विंडो पर ध्यान दें। यह आपको बताएगा कि कौन सी विधानसभाएं भरी हुई हैं और कब। आप देख सकते हैं कि फ़ोल्डर में आपके असेंबली के पुराने संस्करण को कहीं लोड किया जा रहा है।

उदाहरण के लिए यदि आपके पास कई असेंबलियाँ हैं और आप वर्तमान में एक असेंबल असेंबली में तोड़ने का प्रयास कर रहे हैं, तो CLR असेंबली को हल करने का काम करेगा, जो आपके द्वारा प्रोजेक्ट में संदर्भित एक और असेंबली फ़ाइल को लोड कर सकता है।


1
यह भी ध्यान में रखने लायक है, लेकिन मुझे नहीं लगता कि यह यहाँ की समस्या है क्योंकि मैं एक वेबसाइट प्रोजेक्ट में एक क्लास लाइब्रेरी नहीं, बल्कि एक प्रोजेक्ट में तोड़ने की कोशिश कर रहा हूँ।
डेविड

24

विजुअल स्टूडियो को बंद करना और समाधान को फिर से खोलना समस्या को ठीक कर सकता है, अर्थात यह IDE के भीतर ही एक बग है (मैं VS2010 चला रहा हूं)।

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


4
क्लोजिंग विजुअल स्टूडियो ने मेरे लिए भी काम किया। इसके अलावा, स्वच्छ / पुनर्निर्माण कार्यों के साथ।
डेनियलबी

3
इसने वीएस 2015 में समाधान तय किया
टेंटलीमोन

3
वीएस 2017 में फिक्स्ड isue
डैनियल फिशर लेनीबाकॉन

वीएस 2012 में समस्या का समाधान किया गया
Seebiscuit

19

इस समस्या को प्राप्त करने का एक नया तरीका दृश्य स्टूडियो 2017 15.3.1 के रूप में 15.3.5 के माध्यम से प्रकट हुआ है। यदि आप EditorConfig का उपयोग कर रहे हैं , तोcharset=utf8 विकल्प इन लक्षणों का कारण बनता है। वीएस टीम ने इसे फिर से तैयार किया है और कहा है कि वे इस पर काम कर रहे हैं

तो एक तय यह है कि अपनी टिप्पणी दें charset=utf8 लाइन को .editorconfig फ़ाइल में लिखें।

संपादित करें: इसे वीएस 15.5 के रूप में तय किया जाना चाहिए।


स्थिति अब दो दिन पहले (9 अक्टूबर, 2017) के अनुसार "फिक्स्ड - लंबित रिलीज" है। यह अच्छी खबर है, क्योंकि इन दिनों टेक्स्ट एन्कोडिंग के लिए UTF-8 एकमात्र एकमात्र डिफ़ॉल्ट है। :-)
rmunn

मैं यह भी नोटिस करता हूं कि इस मुद्दे का अंतिम कारण स्पष्ट रूप से यह अन्य बगफिक्सcharset=utf8 था , जहां "यूटीएफ -8 के साथ बीओएम" के रूप में व्याख्या की जा रही थी। उस व्याख्या को "बिना बॉम" में बदलते हुए कुछ यूटीएफ -8 फाइलें तोड़ दीं, जिनमें बीओएम था। इसलिए यदि आप इस समस्या में भाग लेते हैं और विजुअल स्टूडियो फिक्स अभी तक जारी नहीं किया गया है, तो अपने टेक्स्ट फ़ाइलों की शुरुआत से BOM को हटाने का प्रयास करें और इससे समस्या ठीक हो सकती है। (यह टिप्पणी एक ज़ीरो विंग के संदर्भ के लिए भीख माँग रही है ... :-))
rmunn

मेरे लिए भी यही समस्या थी। वर्तमान में, यह तय नहीं है या कम से कम अभी तक जारी किया गया है या बग को फिर से पेश किया गया है (संस्करण 15.4.2)
9

12

ऐसा अक्सर तब भी होता है जब आप बायनेरिज़ (अपने प्रोजेक्ट में कोड के प्रोजेक्ट रेफरेंस के बजाय) के लिए एक फ़ाइल संदर्भ का उपयोग कर रहे हैं, और संकलित बाइनरी जिसे आप संदर्भित कर रहे हैं, आपके मशीन पर संबंधित स्रोत कोड के साथ सिंक से बाहर हो जाता है। ऐसा इसलिए हो सकता है क्योंकि आपने बाइनरी के एक नए संस्करण को स्रोत नियंत्रण के बिना नए स्रोत कोड के साथ डाउनलोड किया है जो इसके साथ गया था, या आपके पास अपनी मशीन पर बाइनरी के कुछ संस्करण हैं और एक पुरानी प्रति आदि का संदर्भ दे रहे हैं, यदि यह वास्तव में है। समस्या यह है कि यह परियोजना के संदर्भों का अधिक से अधिक व्यावहारिक उपयोग करने का एक अच्छा कारण है।


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

विरासत कोड उठाते समय यह एक आम समस्या है जो मुझे यह सोचकर मेरे सिर को खरोंच कर छोड़ देती है कि किस जीनियस ने समाधान में एक परियोजना से एक dll का संदर्भ देने का फैसला किया जो केवल समाधान में किसी अन्य परियोजना द्वारा उपयोग किया जाता है। आह
केल

10

मेरे लिए, किसी भी वस्तु ने इस मुद्दे को हल नहीं किया। मैंने उस फ़ंक्शन के अंदर कोड की एक नई लाइन जोड़ी, कुछ इस तरह:

int a=0;

इसे जोड़कर, मुझे लगता है कि मैंने इस फ़ंक्शन को मूल संस्करण में जोड़ने के लिए दृश्य स्टूडियो को चालू किया


7

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


मैं इसे पर्याप्त नहीं कर सकता। मैंने हाल ही में विंडोज को फिर से इंस्टॉल किया है और ध्यान नहीं दिया कि मेरा सिस्टम क्लॉक बंद था। निश्चित रूप से, इस परिवर्तन ने सब कुछ खराब कर दिया, और संपूर्ण समाधान / परियोजना का पुनर्निर्माण करते हुए इसे जादुई रूप से तय किया।
काइल बरन

7

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

  • समाधान खोजी
    • राइट-क्लिक करें समाधान
      • गुण
        • सामान्य गुण
          • डिबग स्रोत फ़ाइलें
            • "इन स्रोत फ़ाइलों की तलाश न करें"।

मेरे लिए किसी अज्ञात कारण से, वी.एस. यह "स्रोत कोड मूल संस्करण से अलग है" के लिए अपराधी हो सकता है।


मैंने उसी समस्या का सामना किया। आपके जवाब ने मेरी मदद की! धन्यवाद! +1
jweyrich

5

समस्या यह है कि आपकी डीबग जानकारी आपके असेंबली के साथ सिंक नहीं है। समाधान सरल है:

  1. अपने बिन फ़ोल्डर पर जाएं
  2. .Pdb फ़ाइलों को निकालें
  3. फिर से बनाना

चाल चलनी चाहिए!

(अजीब बात यह है कि .pdb फ़ाइलों को फेंकने के बिना एक पुनर्निर्माण होता है। हमेशा काम नहीं करता है। मैं संशोधित तिथि को अद्यतन होते हुए देख सकता हूं, लेकिन फिर भी कहीं न कहीं श्रृंखला में (VS2013 डिबगर, IIS, असेंबली कैश) इस परिवर्तन का पता नहीं चला है। )


बिल्ड-> क्लीन सॉल्यूशन को उन फाइल्स को हटाना भी चाहिए, जिन्हें हटाने की जरूरत है।
डेव

इस मुद्दे की वजह से समय की भारी मात्रा में हानि के बाद, इस समाधान ने चाल बना दी। Thx FrankyHollywood
ई.पू.

4

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

एक बार जब कार्यकर्ता लोड हो जाता है (विधानसभा और डिबग प्रतीक आज तक हैं) तो ब्रेकपॉइंट हल हो जाएगा। देखने के लिए एक अच्छी जगह डिबगिंग मेनू में मॉड्यूल विंडो है। वहां आपको उस असेंबली की तलाश करनी चाहिए जो आपकी फाइल की है। पहले जांचें कि विधानसभा भरी हुई है। फिर, इसे कहाँ से लोड किया गया है? फिर, प्रतीक फ़ाइल भरी हुई है। फिर, प्रतीकों फ़ाइल को कहाँ से लोड किया गया है? अंत में दोनों के संस्करणों की जांच करें।


4

मैंने इसका भी सामना किया। जिन स्थितियों के कारण मेरा मुद्दा बना है:

  • मैं स्थानीय रूप से पूर्ण IIS7 उदाहरण चला रहा हूं
  • मैं अपने सॉफ्टवेयर को अलग-अलग प्रोजेक्ट में ला रहा हूं

मैंने पिछले संस्करण को खोलने के कारण ऐसा किया था (वीएस ने यह पूछने के लिए प्रेरित किया कि क्या मैं आईआईएस डिबगिंग में इस उदाहरण को इंगित करना चाहता हूं, मैंने 'हां' में उत्तर दिया), फिर वर्तमान संस्करण को खोलना (फिर से 'हां' के साथ आईआईएस संकेत का जवाब देना) ), फिर पिछले संस्करण में डिबग करने का प्रयास।

हल करने के लिए, मैंने पिछले और इच्छित संस्करण को केवल बंद कर दिया और फिर से खोल दिया, एक बार फिर इसे डीबगिंग स्रोत के रूप में स्वीकार किया।


3

डिबग मोड लॉन्च करने से पहले डिबग मोड में चलने के दौरान ब्रेकपॉइंट को अक्षम करने और फिर से सेट करने का प्रयास करें।


3

ऐसा तब भी होता है जब C ++ प्रोजेक्ट डिबगिंग करता है जो एक मॉड्यूल लोड करता है जिसे कुछ CRL भाषा (प्रबंधित C ++, C # #) के साथ लागू किया गया है। इस स्थिति में त्रुटि संदेश वास्तव में भ्रामक है।

समाधान आम भाषा रनटाइम (CLR) समर्थन कॉन्फ़िगरेशन संपत्ति को स्टार्टअप प्रोजेक्ट और पुर्नविचार के लिए रखा जाता है।


3

यदि आपके समाधान में एक से अधिक परियोजनाएँ हैं , तो सुनिश्चित करें कि सही प्रोजेक्ट के रूप में सेट है StartUp Project। किसी विशेष प्रोजेक्ट को अपने समाधान के स्टार्टअप प्रोजेक्ट के रूप में सेट करने के लिए, प्रोजेक्ट को राइट-क्लिक करें, चुनेंSet As StartUp Project

अपने स्टार्टअप प्रोजेक्ट को सही तरीके से सेट करने के बाद, वांछित ब्रेक-पॉइंट थ्रेड द्वारा पहुंच गया था।


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

3

मैंने इसका अनुभव vs2017 में 32 बिट बिल्ड में किया।

वास्तव में किसी भी समाधान ने मेरे लिए काम नहीं किया। मैंने पुनः आरंभ किया, मैंने IDE फ़ाइलों को साफ़ किया, निर्मित समाधान को साफ किया, git रेपो से खींचा और समाधान का कोई फायदा नहीं हुआ।

मैं नगेट से 64 बिट पर निर्भरता में खींच रहा था और जैसे ही मैंने विधानसभा का उपयोग किया, स्रोतों को अंतिम निष्पादन योग्य नहीं बनाया जा रहा था और इसके बजाय आईडीई कैश्ड स्रोत बनाए जा रहे थे।

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

यह एक दर्द था, मुझे आशा है कि यह उत्तर सूची में सभी को देखने के लिए उठता है।

संपादित करें: IDE सेटिंग में चालू होने पर "प्रॉम्प्ट ऑन बिल्ड एरर" विकल्प होने के बावजूद निर्माण में कोई त्रुटि नहीं थी।


3

मेरे लिए Advanced Build Settingsपरियोजना के गुणों में समाधान छिपा था : यहाँ छवि विवरण दर्ज करें

किसी अज्ञात कारण से इसे इसके लिए सेट किया गया था none:full कारण ब्रेकपॉइंट्स को हिट किया गया था।

इस संवाद को प्राप्त करने के लिए, प्रोजेक्ट गुण खोलें, फिर पर जाएं Build, फिर Advanced...पृष्ठ के नीचे स्थित बटन का चयन करें।


3

मैं एक स्तरित वास्तुकला परियोजना में कई परियोजनाओं में एक ही मुद्दा था और समस्या विन्यास में थी चयनित परियोजना के लिए बिल्ड चेक बॉक्स की जाँच नहीं की। इसलिए यह मुद्दा एक परियोजना के लिए तय किया गया था।

एक अन्य परत के लिए यह एक ही परेशानी दे रहा था यहां तक ​​कि निर्माण विन्यास में सक्षम है। मैंने अन्य सभी विकल्प जैसे परियोजना को फिर से शुरू करना शुरू किया, लेकिन उनमें से कुछ ने मदद की। अंत में मैंने उस विशेष परियोजना के लिए बिल्ड चेकबॉक्स को अनियंत्रित किया और साफ किया और पुनर्निर्माण किया। फिर से चेकबॉक्स चिह्नित किया और वही किया। तब मुद्दा तय किया गया था।

उम्मीद है की यह मदद करेगा..


2

मेरे मामले में, मैं वी.एस. डिफ़ॉल्ट रूप से, डिबगर स्वचालित रूप से मोड का चयन करता है। हालाँकि ऑटोमैटिक हमेशा सही चुनाव नहीं करता है। यदि आपकी प्रक्रिया में कई प्रकार के कोड हैं, तो सुनिश्चित करें कि डीबगर सही का उपयोग कर रहा है।


मेरे मामले में मैं .NET कोड को डीबग करने के लिए w3wp.exe से संलग्न कर रहा था, लेकिन किसी कारण से यह स्क्रिप्ट डीबगर को संलग्न कर रहा था जो मेरे सी # ब्रेकप्वाइंट को देखने में सक्षम नहीं था। इसे .NET डीबगर में बदलने से मेरे C # ब्रेकप्वाइंट को काम करने की अनुमति मिली।
ओरान डेनिसन

2

मेरे मामले में, मैं एक विंडोज़ सीई ऐप विकसित कर रहा था, जिसने एक एमुलेटर के खिलाफ परीक्षण किया था। समस्या यह थी कि निष्पादन योग्य को एमुलेटर पर तैनात नहीं किया गया था, इसलिए .pdb (विकास के वातावरण में) .exe (एमुलेटर में) के साथ सिंक से बाहर था, क्योंकि नया .exe कभी भी एमुलेटर पर कॉपी नहीं किया गया था। मुझे नई तैनाती के लिए बाध्य करने के लिए एमुलेटर में .exe को हटाना पड़ा। फिर काम हुआ।


2

मेरे लिए जो काम किया गया वह x86 से किसी भी CPU में समाधान मंच को बदलना था। किसी में बदलने के बाद, मैंने एक स्टॉप एड्रेस सेट किया, वेबसाइट चलाई, पेज खोला, बटन क्लिक किया और यह बंद हो गया। मैंने साइट को बंद कर दिया, x86 पर वापस बदल दिया और उसी क्रम को सफलतापूर्वक निष्पादित किया।


2
शायद सीपीयू का विकल्प समस्या को बिल्कुल प्रभावित नहीं करता है और यह सिर्फ तथ्य है कि यह एक पुनर्निर्माण को मजबूर करता है?
jwg

यह एक अन्य बिन फ़ोल्डर का उपयोग करेगा, संभवतः आपके किसी भी सीपीयू मानचित्र में एक पुराना डीएल था।
कैर्रा

सक्रिय प्लेटफ़ॉर्म x86 (जिसका मैंने कभी उपयोग नहीं किया था) के दौरान मुझे यह समस्या हुई, Win32 पर वापस जाने से समस्या हल हो गई। पीसी एक साझा एक है इसलिए किसी और ने किसी कारण से उस मंच को सेट किया।
Zac

2

विंडोज 7 के तहत, विजुअल स्टूडियो एक्सप्रेस 2010, यदि आपने विकल्प का उपयोग किया है तो विंडोज एक्सपी एसपी 3 के लिए संगतता मोड का उपयोग करें , यह त्रुटि हो सकती है।

मैंने विकल्प अनियंत्रित किया और इसने फिर से सही काम किया। वीएस या निष्पादन योग्य, चयन गुणों और फिर संगतता के शॉर्टकट पर राइट-क्लिक करें ।


1
यहां क्या हो सकता है कि संगतता मोड को अक्षम करते समय आपकी रिलीज़ कॉन्फ़िगरेशन x32 से x64 तक बदल जाए, और आपके पास x32 में निर्माण के लिए चयनित आपकी सभी परियोजनाएँ नहीं हो सकती हैं। X32 में निर्माण के लिए कुछ परियोजनाएँ अक्षम क्यों हैं, इसके बारे में आपको अपनी टीम के सदस्यों से बात करनी होगी।
असद सईदुद्दीन

ठीक यही मेरी समस्या थी। धन्यवाद!
जोहान होल्टबी

2

पहले मैंने कमांड लाइन से कोशिश की;

कमांड लाइन से अस्थायी फ़ाइलों को हटाने का काम किया।

C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ अस्थाई ASP.NET फ़ाइलें> rd / s रूट

जब मैं "जस्ट माई कोड सक्षम करें" टूल -> विकल्प -> विकल्प -> डिबगिंग -> सामान्य में विकल्प को

मेरे लिए समस्या हल हो गई। यह एक WCF एप्लिकेशन है, एक ashx पृष्ठ को डीबग करने का प्रयास कर रहा था। http://blogs.msdn.com/b/zainnab/archive/2010/10/25/understanding-just-my-code.aspx


2

यह मेरे साथ हुआ क्योंकि मेरे पास समाधान में अन्य परियोजनाएं थीं जो निर्माण नहीं कर रही थीं। के बाद मैं उन समस्याग्रस्त परियोजनाओं को उतार दिया (समाधान एक्सप्लोरर में परियोजना पर राइट-क्लिक करें -> अनलोड प्रोजेक्ट), समाधान को फिर से बनाया और फिर से भाग गया - ब्रेकपॉइंट मारा गया था!


2

जब मैंने प्रोजेक्ट में मौजूदा फ़ाइलें जोड़ीं, तो इसे Visual Studio 2017 पर होने की खुशी हुई। यह मेरे लिए काम किया:

  1. समाधान बंद करें,
  2. जाओ SolutionFolder\.vs\SolutionName\v15\sqlite3और हटाओstorage.ide
  3. समाधान फिर से खोलें

इस समाधान के लिए धन्यवाद! पहले किसी ने काम नहीं किया, और इसने मेरा दिन बचा लिया :)
StefanaB

2

सुनिश्चित करें कि जब आप डीबग करने का प्रयास करते हैं तो आप रिलीज़ मोड में नहीं हैं।

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