Tengo muchas bibliotecas escritas en C++. Quiero llamar a estas bibliotecas desde C#, sin embargo, he encontrado muchos problemas. Quiero saber si hay un libro o una guía que me diga cómo hacerlo.Biblioteca de C++ de llamada en C#
Respuesta
Hace poco tuvo que poner algunas cosas en código C++ .NET. Aunque el código de C++ se empaquetó como un dll, la interfaz era demasiado antipática para P/Invoke, por lo que decidí escribirlo en C++ administrado, o C++/CLI, como aparentemente ahora se conoce.
Encontré this tutorial muy útil en la sintaxis. No es tan fácil a simple vista, pero el contenido parecía bastante bueno.
Si busca en google "C++ C# interop", encontrará toneladas de información sobre este tema.
Un par de enlaces:
http://msdn.microsoft.com/en-us/magazine/cc301501.aspx
http://msdn.microsoft.com/en-us/library/ms235281(VS.80).aspx
Soy un gran fan del libro C++/CLI in Action que tiene un par de capítulos de la muestra útiles en línea, en esa dirección.
Este intro on CodeProject es un buen punto de partida.
El autor de C++/CLI en acción tiene varios artículos sobre CodeProject, desplácese hacia abajo a la sección C++/CLI en his index.
El Wikipedia article on P/Invoke tiene una serie de razones por las que podría no desea utilizar este enfoque, con el que estoy de acuerdo:
- pérdida de apoyo de escribir por el compilador
- posibles problemas de tipo de datos o de alineación a medida que tiene que asignar tipos a mano
- necesidad de precisar los objetos recolección de basura
el mejor punto de partida en MSDN es la summary article.
- 1. Biblioteca compartida de C++ llamada desde C
- 2. Devolución de llamada en C#
- 3. biblioteca temporizador en C
- 4. Devolución de llamada en C#
- 5. C# C++ devolución de llamada de interoperabilidad
- 6. biblioteca c/C++ NLP
- 7. Contenedor de clase C++/CLI para biblioteca c - devoluciones de llamada
- 8. Biblioteca de geometría en C++
- 9. Biblioteca de IRC en C#
- 10. Biblioteca de SMS en C#
- 11. Llamada C# dll función de C++/CLI
- 12. DLL de llamada C desde C#
- 13. C++ Compatibilidad de biblioteca
- 14. Biblioteca de espectrogramas C++
- 15. C Biblioteca de imágenes
- 16. Biblioteca de cadenas C
- 17. Anular una llamada de función en C
- 18. Biblioteca Eye-Tracking en C#, C/C++ u Objective-C
- 19. Mejor biblioteca de red C/C++
- 20. Biblioteca de reconocimiento de texto C/C++/Objective-C
- 21. biblioteca C++ con interfaz c
- 22. Biblioteca de estabilización de imagen Objetivo-C/C/C++?
- 23. devolución de llamada en C#, orden de llamada y devolución
- 24. Sincronización de una llamada asincrónica en C#
- 25. Métodos de llamada C del código C++/Java/C#?
- 26. Biblioteca de resaltado de sintaxis escrita en C/C++
- 27. Directorio portátil/biblioteca de visualización de archivos en C/C++
- 28. Biblioteca de dibujo fácil de usar en c/C++?
- 29. Borrar C++/CLI de llamada en el objeto C#
- 30. Velocidad de llamada virtual en C# vs C++
http://geeklit.blogspot.com/2006/08/calling-c-lib-from-c.html –
Ver http://stackoverflow.com/questions/569603/using-c-class-dll- aplicación in-c – Richard