2009-08-07 33 views

Respuesta

4

No, es necesario el uso de C++ administrado

+2

O un contenedor escrito en C++ administrado. –

+0

Exactamente. Lo que hacemos es crear un contenedor fino con Extern externo estándar "C" en Managed C++, luego escribir el código real en C#. – ConsultUtah

1

Sin utilizar COM, usted tiene que escribir un C++/CLI envoltura. Su código nativo que incluye el archivo de encabezado de su contenedor debe compilarse con/clr (soporte de tiempo de ejecución de idioma común).

Solo por curiosidad, ¿por qué no usar COM interoperabilidad? Consulte las herramientas regasm.exe y tlbexp.exe.

+0

Porque no estoy familiarizado con COM y haré todo lo posible para evitar aprender :) –

+1

COM también sufre del desagradable problema DLL debido al registro global. Es posible hacer un COM sin registro pero la documentación es confusa y hay errores http://stackoverflow.com/questions/617253/is-anyone-successfully-using-registration-free-com-with-net-components –

1

Necesita algo para que el mundo administrado y el mundo no administrado funcionen en conjunto. Si no desea utilizar COM, puede crear clases contenedoras en C++/CLI.

Aquí hay un artículo que puede comenzar: .NET to C++ Bridge.

+0

Gracias usted para el artículo. Es útil. –

Cuestiones relacionadas