मेरे पास एक प्रबंधित C # dll है जो DLLImport का उपयोग करते हुए एक अप्रबंधित C ++ dll का उपयोग करता है। सब बढ़िया काम कर रहा है। हालाँकि, मैं उस प्रबंधित DLL के अंदर उस अप्रबंधित DLL को एम्बेड करना चाहता हूँ जैसा कि Microsoft द्वारा समझाया गया है:
इसलिए मैंने अपने प्रबंधित dll प्रोजेक्ट में अप्रबंधित dll फ़ाइल को जोड़ा, संपत्ति को 'एंबेडेड रिसोर्स' में सेट किया और DLLImport को कुछ इस तरह से संशोधित किया:
[DllImport("Unmanaged Driver.dll, Wrapper Engine, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null",
CallingConvention = CallingConvention.Winapi)]
जहाँ 'रैपर इंजन' मेरे प्रबंधित DLL का असेंबली नाम है 'Unmanaged Driver.dll' मानव रहित DLL है
जब मैं दौड़ता हूं, मुझे मिलता है:
प्रवेश निषेध है। (HRESULT से अपवाद: 0x80070005 (E_ACCESSDENIED)
मैंने MSDN और http://blogs.msdn.com/suzcook/ से देखा कि यह संभव होना चाहिए ...