2008-10-24 7 views

उत्तर

62

"obj" फ़ोल्डर का उपयोग अस्थायी ऑब्जेक्ट फ़ाइलों और अन्य फ़ाइलों को संकलन प्रक्रिया के दौरान अंतिम बाइनरी बनाने के लिए उपयोग करने के लिए किया जाता है।

"बिन" फ़ोल्डर पूर्ण बाइनरी (असेंबली) के लिए आउटपुट फ़ोल्डर है।

43

splattne's answer के अलावा, मुझे लगता है कि कारण होने के कारण (और निर्माण के बाद इसे साफ नहीं करना) वृद्धिशील संकलन का समर्थन करना है। यदि आप पहले से ही 100 कक्षाएं संकलित कर चुके हैं और उनमें से एक को बदल चुके हैं, तो यह एक बदली हुई कक्षा के लिए कोड को फिर से संकलित करने के लिए और अधिक कुशल है और नए और पुराने कोड के मिश्रण से exe/dll को फिर से इकट्ठा करना अधिक कुशल है।

बेशक, वृद्धिशील संकलन सिर्फ इतना ही जटिल है - इसे सबकुछ का ट्रैक रखना है ताकि यह पता लगाया जा सके कि उसे कक्षा को फिर से कंपाइल करने की आवश्यकता है, भले ही वह वर्ग स्वयं नहीं बदला हो। (उदाहरण के लिए यदि एक वर्ग में एक नया अधिभार उपलब्ध हो जाता है - कुछ कॉलर्स को फिर से सम्मिलित करने की आवश्यकता हो सकती है।)

+0

'ओबीजे' फाइलों का स्रोत क्या है? मैं पूछता हूं क्योंकि मुझे एज़ूर क्लाउड सर्विस प्रोजेक्ट में कोई समस्या है जो 'System.Runtime.dll' के गलत संस्करण को पैकेजिंग कर रहा है। कृपया [यहां] देखें (http://stackoverflow.com/q/40572793/7850)। –

+0

@ शूलबहर: सुनिश्चित नहीं है कि आपका "स्रोत" क्या मतलब है, लेकिन मुझे नहीं लगता कि मैं आपकी समस्याओं पर कोई प्रकाश डाल सकता हूं, मुझे डर है। –

+0

मेरा मतलब है, विजुअल स्टूडियो कैसे तय करता है कि किसी दिए गए डीएलएल का कौन सा संस्करण obj फ़ोल्डर में कॉपी हो जाता है? मेरे मामले में, यदि कार्यकर्ता भूमिका प्रोजेक्ट सिस्टम के v4.3.1 का जिक्र कर रहा है। रनटाइम, क्लाउड सर्विस प्रोजेक्ट डीएलएल के एक अलग संस्करण को अपने ओबीजे फ़ोल्डर में क्यों कॉपी करेगा? –

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