मेरे पास 3 सी # प्रोजेक्ट ए, बी, और सी दोनों ए और बी संदर्भ सी हैं। ए और बी से सी के संदर्भों को "स्थानीय कॉपी करें" पर सेट किया गया है जिसका अर्थ यह है कि सी के निर्माण के बाद C.dll (सी की आउटपुट निर्देशिका में), यह ए या बी (जो भी संकलित किया जा रहा है) की आउटपुट निर्देशिका में कॉपी किया गया हैविजुअल स्टूडियो 2015 डीबगिंग के दौरान डीएलएल लॉक करता है
मेरे पास 2 समाधान, एसए और एसबी हैं। एसए में ए और सी और एसबी में बी और सी शामिल हैं I विजुअल स्टूडियो 2015 के 2 उदाहरण लॉन्च करते हैं। मैं एक उदाहरण में एसए खोलता हूं और दूसरे में एसबी खोलता हूं।
मुझे लगता है कि अगर मैं एसए से डीबगिंग (एफ 5) ए शुरू करता हूं, और फिर (जबकि ए अभी भी डिबगिंग कर रहा है), एसबी से सी में बदलाव करें और एसबी को संकलित करने का प्रयास करें, मुझे एक संकलन त्रुटि मिलती है जिसमें सी .dll को अधिक लिखित नहीं किया जा सकता है क्योंकि यह किसी अन्य प्रक्रिया द्वारा उपयोग में है (devenv.exe का उदाहरण जो एसए चला रहा है)।
यह मुझे समझ में नहीं आता है क्योंकि सी से सीएलएल को संकलित करने और ए की आउटपुट निर्देशिका में कॉपी करने के बाद, विजुअल स्टूडियो को फ़ाइल पर लॉक जारी करना चाहिए।
मैं सत्यापित किया है (एसए में मॉड्यूल खिड़की के माध्यम से) कि लोड C.dll के संस्करण है जो ए
के उत्पादन निर्देशिकायह कल होने वाली है जब मैं दृश्य का उपयोग शुरू किया शुरू करने के लिए कॉपी किया गया है है स्टूडियो 2015 (विजुअल स्टूडियो 2013 की बजाय)।
क्या किसी के पास कोई विचार है? मेरा वर्तमान समाधान सीटीआरएल-एफ 5 (डीबगिंग के बिना शुरू) के माध्यम से एसए चलाने के लिए है, लेकिन जब मैं एसए और एसबी को डीबग मोड में एक साथ चलाने के लिए चाहता हूं तो यह परेशान हो जाता है।
धन्यवाद।
अद्यतन
मैं में क्यों "संपादित करें और जारी रखें" सुविधा वर्णित व्यवहार का कारण बन सकता है, और https://msdn.microsoft.com/en-us/library/ms164926.aspx> संपादित करें यह पेज के अनुसार और जारी एक स्रोत कोड संशोधन करने के लिए अनुमति देता है कुछ शोध किया एक में, जबकि डिबगिंग सत्र और डिबगिंग सत्र को पुन: प्रारंभ करने, पुन: संकलित करने और पुनरारंभ करने के बिना परिणाम प्रभावी होते हैं (क्या एक गड़बड़ी की समस्या होनी चाहिए)। उस सुविधा को सक्षम करने के साथ, लॉक को समझाते हुए किसी भी समय पर निर्भर स्टूडियो को किसी भी निर्भर डीएलएल को पुन: संकलित करने की आवश्यकता हो सकती है।
मेरी क्रिस्टल बॉल कहती है कि यह वास्तव में पीडीबी फ़ाइल है जो लॉक है। –
दिलचस्प सुझाव, हालांकि एसबी से संकलन त्रुटि स्पष्ट रूप से बताती है कि यह डीएलएल है जो लॉक है, और विंडोज एक्सप्लोरर से डीएलएल को हटाने का प्रयास विफल रहता है। शायद पीडीबी भी बंद कर दिया गया है (हालांकि यह ए की आउटपुट निर्देशिका में भी कॉपी किया गया है)। किसी भी तरह से, मुझे लगता है कि यह वीएस2013 से वीएस2015 में बदलाव था जिसके परिणामस्वरूप मैं देख रहा था और मुझे उम्मीद है कि इसे ठीक करने का कोई तरीका है। त्रुटि: लिखने के लिए 'सी: \ BUILD \ C \ x86 \ obj \ Debug \ C.dll' नहीं खोल सकता - 'प्रक्रिया फ़ाइल तक नहीं पहुंच सकती' C: \ BUILD \ C \ x86 \ obj \ Debug \ C .dll 'क्योंकि यह किसी अन्य प्रक्रिया द्वारा उपयोग किया जा रहा है।' – Shea