मेरे पास एक COM DLL (कहना है, xyz.dll) वीसी ++ में कोडित है। मैं एक कॉलिंग EXE एप्लिकेशन (calling.exe) बनाना चाहता हूं जो COM DLL (xyz.dll) के कार्यों को कॉल करेगा।वीसी ++ .EXE एप्लिकेशन से COM DLL (VC++ में) के फ़ंक्शंस को कैसे कॉल करें?
मैंने http://www.codeproject.com/kb/DLL/XDllPt1.aspx लिंक में दिए गए चरणों का पालन किया। लेकिन मैं डीएलएल और EXE को कनेक्ट करने में सक्षम नहीं हूं और इसलिए COM DLL के कार्यों को कॉल करने में सक्षम नहीं हूं। मैं COM और VC++ प्रोग्रामिंग के लिए बिल्कुल नया हूं। क्या कोई कृपया मेरी मदद कर सकता है। एक समाधान DLL परियोजना होने बनाया गया (xyz:
मैं दृश्य स्टूडियो का उपयोग कर रहा 2005.
ये सटीक चरण मैं पीछा किया --------
कदम 1 हैं .dll) प्रोजेक्ट और टेम्पलेट एमएफसी एप्लिकेशन (संवाद आधारित) के कॉलर एप्लिकेशन प्रोजेक्ट (calling.exe)। स्टार्टअप प्रोजेक्ट के रूप में इस कॉलिंग.एक्सई को बनाया गया ..
चरण 2: समाधान एक्सप्लोरर में call.exe प्रोजेक्ट पर राइट क्लिक करके गुणों के पास गया। विन्यास गुण -> C/C++ -> जनरल -> अतिरिक्त निर्देशों और DLL परियोजना के लिए पथ जोड़ा ..
चरण 3 को शामिल करें: calling.exe आवेदन पर फिर से राइट क्लिक परियोजना गुणों -> कॉन्फ़िगरेशन गुण -> लिंकर -> इनपुट -> अतिरिक्त निर्भरता और ने निर्मित DLL प्रोजेक्ट के लिए .ib फ़ाइल को जोड़ा।
चरण 4:calling.exe आवेदन पर राइट क्लिक करें परियोजना, गुण -> आम गुण -> संदर्भ -> DLL में जोड़ा संदर्भ।
कदम 5:आवेदन परियोजना निर्देशिका के लिए xyz.dll फ़ाइल को कॉपी किया गया।
चरण 6: मेरी डीएलएल में कई शीर्षलेख फ़ाइलें और इसकी संबंधित स्रोत फ़ाइलें हैं। इसलिए, DLL प्रोजेक्ट में मौजूद सभी शीर्षलेख फ़ाइलों को मेरे calling.exe एप्लिकेशन प्रोग्राम में जोड़ा गया। OnInitDialog() फ़ंक्शन के भीतर call.exe एप्लिकेशन के .CPP प्रोग्राम में से एक में मौजूद है, मैंने DLL के कार्यों को बुलाया।
बस बयान
Cx objname; objname.func();
यहां सीएक्स डीएलएल में कक्षा का नाम है।
मैंने EXISTING DLL प्रोजेक्ट की कॉन्फ़िगरेशन सेटिंग्स के साथ कोई परिवर्तन नहीं किया क्योंकि यह डीएलएल है जो पहले से ही एक विशेषज्ञ द्वारा तैयार किया गया है और मैं इस डीएलएल में मौजूद कार्यों को कॉल करने के लिए सिर्फ कॉलिंग एप्लायंस लिख रहा हूं।
अग्रिम में धन्यवाद।
stdafx.h में अन्य सभी शीर्षकों से पहले अपना # आयात करें। –
हाय मार्टिन आपकी तरह की मदद के लिए बहुत बहुत धन्यवाद। मैंने आपके कंसोल वीसी ++ एप्लिकेशन से डीएलएल के कार्यों को सफलतापूर्वक आपके द्वारा दिए गए चरणों का पालन करके बुलाया ... – codeLover
आपका स्वागत है। अगर आप इससे खुश हैं तो मेरा जवाब स्वीकार करें (इसके आगे टिक पर क्लिक करें)। –