2010-05-07 9 views
13

विजुअल स्टूडियो 2008 में समाधान बनाने का प्रयास करते समय किसी को भी यह त्रुटि हुई थी?प्रोजेक्ट फ़ाइल '' का नाम बदल दिया गया है या अब समाधान में नहीं है

यह मुझे एमएडी चला रहा है! मैंने सभी संलग्न परियोजनाओं को हटा दिया है और उन्हें फिर से जोड़ा है, और यह अभी भी मुझे समाधान बनाने या चलाने की अनुमति नहीं दे रहा है।

कोई सुझाव?

+0

क्या आप एक नई परियोजना या मौजूदा एक बनाने की कोशिश कर रहे हैं? क्या आप अधिक जानकारी दे सकते हैं .. – Malcolm

+0

मौजूदा समाधान, बस कुछ परियोजनाओं को हटा दिया जो अब से मौजूद नहीं हैं और वीएस थोड़ा मानसिक हो गया है! –

+1

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

उत्तर

8

आप किसी पाठ संपादक में समाधान फ़ाइल (SolutionName.sln) खोलते हैं आपको चाहिए प्रत्येक परियोजना के लिए इस तरह की लाइनों कुछ के एक जोड़े:

Project("{FAE04EC0-301F-11D3-BF4B-00C04F89EFBC}") = "ProjectName", "ProjectName\ProjectName.csproj", "{6B887D8C-D874-4AB2-B2CC-3551DEA2CC83}" 
EndProject 

वहाँ उन पंक्तियों के बीच में और अधिक सामान हो सकता है, या इस मामले में वे किसी भी तरह से भ्रष्ट हो सकते हैं। यदि आप समस्या प्रविष्टि को अलग कर सकते हैं और इसे हटा सकते हैं तो आप समाधान को पुनर्जीवित करने में सक्षम हो सकते हैं।

+1

केवल दो नामित परियोजनाएं हैं जिनकी मुझे उम्मीद थी, और कुछ वैश्विक जानकारी, नाम के बिना कोई अतिरिक्त परियोजना नहीं ... –

+0

यदि आप कोई नया समाधान बनाते हैं और मौजूदा परियोजनाओं को जोड़ते हैं तो यह काम करता है? –

+0

कोई विचार नहीं, आप एक परियोजना के साथ शुरू किए बिना स्क्रैच से एक नया एसएलएन कैसे बनाते हैं? –

5

यहां स्वीकृत समाधान ने हमारे लिए इसे हल नहीं किया। .sln फ़ाइल में प्रोजेक्ट का सही पथ था। इसके बजाए, यह पता चला है कि किसी ने .sln.cache फ़ाइल को गिट में धक्का दिया था और इस परियोजना के लिए गलत रास्ता था। हमने कंप्यूटर से .sln.cache फ़ाइल को हटा दिया और निर्माण ठीक काम किया। भविष्य में इसे रोकने के लिए, हमने git से .sln.cache फ़ाइल को हटा दिया, .gitignore फ़ाइल में * .sln.cache जोड़ा।

8

मैंने कल इस त्रुटि पर कुछ घंटे बिताए और सौभाग्य से इसके नीचे पहुंच गए।

हमारे पास एक प्रोजेक्ट फ़ाइल थी, चलो बस इसे ProblemProj.vcxproj कहते हैं जिसे मूल रूप से SolutionA.sln में शामिल किया गया था और ठीक संकलित किया गया था। परियोजना को फिर एक अलग समाधान, SolutionB.sln में जोड़ा गया था, और उस समाधान में ठीक संकलित किया गया था। हालांकि, समाधान ए पर लौटने के बाद, "प्रोजेक्ट फ़ाइल" का नाम बदल दिया गया है "त्रुटि शुरू हो रही है।

ऐसा इसलिए हुआ क्योंकि वीएस -2010 ने ProblemProj.vcxproj की ProjectGUID को बदलने का फैसला किया। SolutionB.sln ने सही GUID का संदर्भ दिया, लेकिन SolutionA.sln को अभी भी पुराने GUID का संदर्भ था।

आप कुछ इस तरह देख .sln फ़ाइल में पा सकते हैं:

< ProjectGuid> {271F161A-F26F-41D1-BDC8-FCF912A2F4FB} </ProjectGuid>

समस्या में तय किया जा सकता है निम्न विधियों:

1) एक पाठ संपादक में इसे खोलकर और ऊपर दिए गए मार्कअप की तलाश करके SolutionA.sln के अंदर GUID को मैन्युअल रूप से संपादित करें।

2) परियोजना को SolutionA.sln से निकालें और इसे फिर से जोड़ें; इसने इसे सही GUID लेने का सौभाग्य दिया और सौभाग्य से इसे फिर से बदलने का फैसला नहीं किया।

3) ProblemProj.vcxproj में GUID परिवर्तन को वापस करें (जिसके बाद समाधान बी में ठीक उसी त्रुटि का कारण बन जाएगा, इसलिए जब तक समाधान बी आपके लिए कोई फर्क नहीं पड़ता तब तक मैं इसकी अनुशंसा नहीं करता)।

उम्मीद है कि इससे मदद मिलती है।

1

अपने प्रोजेक्ट रेफरेंस पर जाएं और जांचें कि उन संदर्भित परियोजनाओं में से एक लेबल (अनुपलब्ध) है या नहीं।

इस संदर्भ को हटाएं और इसे दोबारा जोड़ें।

यह मेरे लिए उभरा, और इस तरह मुझे इस समस्या को हल करने का समाधान मिला।

+0

धन्यवाद ... आपके संकेत ने मेरी समस्या हल कर दी है। इस मामले में यह परियोजना अन्य परियोजना का संदर्भ दे रही थी जो समाधान में नहीं थी। परियोजना संदर्भों को देखकर इसके बारे में चिंतित। – jstuardo

2

वीएस के साथ एक समाधान लोड करने के बाद मुझे थोड़ा अलग कारण के साथ वीएस 2012 में एक ही त्रुटि का सामना करना पड़ा।

समाधान में एक एकल सी ++ प्रोजेक्ट को बदलकर एक अज्ञात प्रोजेक्ट का संदर्भ था (केवल एक ग्रिड; कोई नाम नहीं, कोई रास्ता नहीं)। हालांकि इस परियोजना को कभी भी लोड किया गया था, समाधान में किसी भी परियोजना के लिए संदर्भ बनाना, साफ करना या संदर्भ बनाना असंभव था। मैंने पाया कि समाधान से परियोजनाओं को अनलोड करने से कौन सा प्रोजेक्ट खराब संदर्भ था जब तक कि शिकायत बंद नहीं हुई।

+0

मैं इसकी पुष्टि कर सकता हूं, प्रस्तावित कामकाज मेरे लिए काम करता है। – Stefan

0

एनयूडी एसडीएफ। मैंने बिना किसी सफलता के सभी GUID और संदर्भों की जांच करने का प्रयास किया। मैंने समाधान की एसडीएफ फ़ाइल हटा दी और इसे साफ़ कर दिया। (एसडीएफ स्वचालित रूप से जेनरेट की गई डेटाबेस फ़ाइल है।)

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

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