Tengo una dll C # administrada que usa una dll C ++ no administrada usando DLLImport. Todo está funcionando muy bien. Sin embargo, quiero incrustar esa DLL no administrada dentro de mi DLL administrada como lo explica Microsoft allí:
Así que agregué el archivo dll no administrado a mi proyecto dll administrado, configuré la propiedad en 'Recurso incrustado' y modifiqué DLLImport a algo como:
[DllImport("Unmanaged Driver.dll, Wrapper Engine, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null",
CallingConvention = CallingConvention.Winapi)]
donde 'Wrapper Engine' es el nombre de ensamblado de mi DLL administrada 'Unmanaged Driver.dll' es la DLL no administrada
Cuando corro, obtengo:
Acceso denegado. (Excepción de HRESULT: 0x80070005 (E_ACCESSDENIED))
Vi desde MSDN y desde http://blogs.msdn.com/suzcook/ que se supone que es posible ...