2011-08-04 17 views
11

का उपयोग कर रहा है मेरे पास विजुअल स्टूडियो 2008 में एक बड़ा .NET 2.0 समाधान (151 प्रोजेक्ट) है। कई बार जब मैं वीएस में बिल्ड करता हूं (यहां तक ​​कि केवल एक प्रोजेक्ट के लिए) एक त्रुटि यह कह रही है कि यह मेरी डीएलएल असेंबली में से एक को आउटपुट निर्देशिका में कॉपी नहीं कर सकती क्योंकि यह उपयोग में है। मेरे पास पृष्ठभूमि में मौजूद कोई अन्य प्रक्रिया नहीं है या मौजूदा डीबग सत्र चल रहे हैं जो इस असेंबली का उपयोग करेंगे। यदि मैं प्रोसेस एक्सप्लोरर खोलता हूं और इस असेंबली नाम के लिए खोज करता हूं तो विजुअल स्टूडियो (devenv.exe) एकमात्र परिणाम के रूप में आता है। परिणामों को देखते हुए विजुअल स्टूडियो ने कुछ कारणों से मेरी असेंबली को डीएलएल के रूप में लोड किया है। समाधान को बंद करना और इसे फिर से खोलना समस्या को हल नहीं करता है। इस समस्या को हल करने के लिए मुझे पूरी तरह से वीएस से बाहर निकलना होगा जो काफी विघटनकारी है। क्या किसी को पता है कि क्या हो रहा है? मैं विंडो 7 पर चल रहा हूं, मुझे नहीं लगता कि मैंने यह समस्या विंडोज एक्सपी पर देखी है।संकलित नहीं कर सकता क्योंकि विजुअल स्टूडियो मेरे डीएलएल

मैं विजुअल स्टूडियो 2008 संस्करण 9.0.30729.1 एसपी चला रहा हूं। अगर यह मायने रखता है तो मैं रीशेपर 6 भी चला रहा हूं।

+0

आपका आवेदन क्या करता है? क्या यह बहुप्रचारित है, और जब आप प्रोग्राम निष्पादन को रोकते हैं तो शायद आप धागे को सही तरीके से मार नहीं रहे हैं? –

+0

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

+0

संभावित डुप्लिकेट: http://stackoverflow.com/questions/2002273/visual-studio-locks-output-file-on-build –

उत्तर

3

क्या किसी को पता है कि क्या हो रहा है? मैं विंडो 7 पर चल रहा हूं, I ऐसा नहीं लगता कि मैंने Windows XP पर यह समस्या देखी है।

मैं इस समस्या में Windows XP और पर हर समय चलाने के अपने भी विजुअल स्टूडियो 2008 क्या हमेशा मेरे लिए काम करता मैं बस स्वच्छ सब समाधान है, यह किसी भी फाइल है कि में हो सकता है से छुटकारा हो जाता करने के लिए स्थानीय नहीं मेरी विजुअल स्टूडियो की वजह से सिस्टम की मेमोरी।

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

+0

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

+0

यदि समाधान की सफाई करना काम नहीं करता है, तो कोशिश करने की अगली चीज़ (1) समाधान बंद करें, (2) समाधान को दोबारा खोलें। समाधान को बंद करने से वीएस को उस समाधान के लिए लोड किए गए सभी डीएलएलएस को रिहा करने के लिए मजबूर होना चाहिए। –

0

मुझे लगता है कि डीएलएल (ProjectName) .vshost.exe प्रक्रिया द्वारा उपयोग किया जा रहा है। आप उस प्रक्रिया को मारने का प्रयास कर सकते हैं और देख सकते हैं कि यह काम करता है या नहीं। शायद सबसे अच्छी बात नहीं है, लेकिन वीएस को पुनरारंभ करने से यह आसान हो सकता है।

+0

नहीं, vshost प्रक्रिया शामिल नहीं है। प्रक्रिया एक्सप्लोरर के अनुसार, इसका उपयोग करने वाली एकमात्र प्रक्रिया devenv.exe (विजुअल स्टूडियो स्वयं) है। और यह एक डीएलएल के रूप में खुला है (फ़ाइल संभाल नहीं है जिसे प्रोसेस एक्सप्लोरर से मैन्युअल रूप से बंद किया जा सकता है)। – Dennis

0

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

0

मुझे इस बारे में कोई जानकारी नहीं है कि यह क्यों काम करता है, लेकिन मुझे एक ही समस्या थी और जब मैंने प्रोजेक्ट में प्रोजेक्ट शुरू किया, तो मैं सबकुछ फिर से काम करना चाहता था।

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

1

निम्न आदेश का उपयोग और में दृश्य स्टूडियो के "पूर्व घटनाक्रम बनाएँ" यह जगह:

if exist "$(TargetPath).locked" del "$(TargetPath).locked" 

आशा यह आप में मदद मिलेगी।

ओपन दृश्य स्टूडियो में एक निष्पादन योग्य परियोजना: होस्टिंग प्रक्रिया को अक्षम करने के

1

प्रयास करें। ऐसी परियोजनाएं जो निष्पादन योग्य नहीं बनाती हैं (उदाहरण के लिए, कक्षा पुस्तकालय या सेवा प्रोजेक्ट) में यह विकल्प नहीं है।

  1. प्रोजेक्ट मेनू पर, गुण क्लिक करें।

  2. डीबग टैब पर क्लिक करें।

  3. विजुअल स्टूडियो होस्टिंग प्रक्रिया सक्षम करें चेक बॉक्स को साफ़ करें।

0

VBCSCompiler.exe प्रक्रिया को पुनर्जीवित करें और पुनर्निर्माण करें।

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