मेरे पास एक एमएफसी एक्सटेंशन डीएलएल है जो एक सी ++ वर्ग निर्यात करता है, और मुझे कक्षा विधि के व्यवहार को संशोधित करने की आवश्यकता है। परिवर्तन कक्षा के तरीकों के हस्ताक्षर को प्रभावित नहीं करते हैं।एमएफसी एक्सटेंशन डीएलएल का पुनर्मूल्यांकन निर्यात किए गए कार्यों के प्रवेश बिंदु
मैं इस पुस्तकालय के पहले रिलीज़ संस्करण की "lib" फ़ाइल का उपयोग करने वाले मॉड्यूल को पुन: संकलित नहीं करना चाहता हूं।
क्या होता है यदि परिवर्तन फ़ंक्शन के प्रवेश बिंदु पते को संशोधित करते हैं?
उदाहरण के लिए, निर्माता का पता बदल गया:
Export Ordinal Function Hint Entry Point
[+ ] 3 (0x0003) 2 (0x0002) [email protected]@[email protected] 0x00009CB0 (OLD DLL)
[+ ] 3 (0x0003) 2 (0x0002) [email protected]@[email protected] 0x00009760 (NEW DLL)
मैं मॉड्यूल है कि पुस्तकालय वैसे भी का उपयोग पुन: संयोजित करना चाहिए?
मैंने पुन: संकलित लाइब्रेरी का परीक्षण किया - नए प्रवेश बिंदुओं के साथ - जारी किए गए निष्पादन योग्य का उपयोग करके और सब कुछ ठीक काम करता है। मुझे यकीन नहीं है कि यह परिदृश्य कुछ साइड इफेक्ट्स छुपा रहा है।
डीएलएल को निष्पादन योग्य लिंक करने के लिए कब आवश्यक है?
बाइनरी संगतता कब टूटी जाती है?
चूंकि वह कक्षाओं का उपयोग कर रहा है, इसलिए एक अन्य उदाहरण जो सूक्ष्म टूटने का कारण बन सकता है, स्थान के बारे में आपकी टिप्पणी के अलावा, यदि डीएलएल में रहने वाले वर्ग के भीतर नए सदस्य चर जोड़े जाते हैं। –
@ निकबौगलिस, अनुस्मारक के लिए धन्यवाद - मैंने उस स्थिति को कवर करने के अपने जवाब में जोड़ा है। –
आपकी मदद के लिए सभी को धन्यवाद। – sam