मैं दो संस्करणों में एक प्रबंधित कोड (ज्यादातर सी ++/सीएलआई) में एक उपकरण बना रहा हूं, एक 'सामान्य उपयोगकर्ता' संस्करण और 'प्रो' संस्करण।स्थिर पुस्तकालयों के .NET समकक्ष?
तथ्य यह है कि कोर संस्करण दो संस्करणों के बीच समान है, जिससे मुझे थोड़ा परेशानी हुई क्योंकि मैं परिणामस्वरूप उपकरण को एक असेंबली (डीएलएल) के रूप में पैकेज करना चाहता हूं और मैं .cpp को शामिल नहीं करना चाहता टूल्स के दो संस्करणों की परियोजनाओं में सामान्य कोड के लिए फ़ाइलें। मेरे पास सामान्य कोड और उपकरण के प्रत्येक संस्करण के लिए एक प्रोजेक्ट होगा और टूल प्रोजेक्ट का प्रत्येक संस्करण सामान्य कोड पर निर्भर करता है और इसे वांछित रूप से लिंक करता है।
अप्रबंधित सी ++ में मैं सामान्य कोड को एक स्थिर पुस्तकालय में रखकर और टूल के दोनों संस्करणों को लिंक करके ऐसा करता हूं। मुझे लगता है कि यह सी ++/सीएलआई में काम करने में सक्षम नहीं है। ऐसा लगता है कि मुझे एक सामान्य कोड को एक डीएलएल असेंबली में बनाने के लिए मजबूर होना पड़ता है और जिसके परिणामस्वरूप मैं अधिक डीएलएल की अपेक्षा करता हूं।
तो, संक्षेप में, मैं एक परियोजना में सामान्य कोड बनाने का तरीका नहीं बना सकता और दो एकल डीएलएल असेंबली बनाने के लिए इसे अंतिम उत्पाद परियोजनाओं के साथ जोड़ सकता हूं जिसमें दोनों सामान्य कोड शामिल हैं।
मैं शायद कुछ गलत कर रहा हूं लेकिन मैंने नेटमोड्यूल का उपयोग करके यह कैसे करना है और जो कुछ भी मैं इसे काम नहीं कर सका। अंत में, मैं इसे काम करने का एकमात्र तरीका लिंकर को सामान्य कोड असेंबली के निर्माण उत्पादों को जोड़ने के लिए बताता था जो कि काम करता है, लेकिन यह हैक आईएमएचओ का थोड़ा सा है।
वैसे भी, क्या किसी के पास इस समस्या को हल करने के लिए कोई सुझाव है?
संपादित: मुझे लगता है मैं इस तथ्य है कि उत्पन्न सभाओं नहीं 100% कोड कामयाब वे उसी रूप में प्रबंधित और अप्रबंधित कोड का संयोजन नहीं हो, C++/CLI के साथ उत्पादन विधानसभाओं के साथ काफी आम हैं, शायद उल्लेख किया जाना चाहिए था ...
मैं इस विचार से छुटकारा पाने की अत्यधिक अनुशंसा करता हूं कि आपको इसे एक एकल डीएलएल में पैकेज करने की आवश्यकता है। –