Vincular dinámicamente un dll no administrado en una biblioteca de clases C ++ administrada

StackOverflow https://stackoverflow.com/questions/463998

  •  19-08-2019
  •  | 
  •  

Pregunta

A través de la prueba n error descubrí cómo vincular una biblioteca estática no administrada a un dll C ++ administrado, pero no tengo idea de cómo incluir dinámicamente una DLL. ¿Alguien sabe cómo hacer esto en Visual Studio 2008?

¿Fue útil?

Solución 2

Estoy tratando de vincular CAIR en mi ensamblado administrado. CAIR depende de pthreads, una biblioteca estática o dinámica para acceder a las funciones posix de cualquier sistema operativo.

Esto no tiene sentido para mí, pero la solución fue incluir el archivo pthreads.lib en el ensamblado C ++ administrado Y vincular dinámicamente pthreads.dll a la biblioteca administrada, así como a todos los proyectos de los consumidores.

Tenía la impresión de que no necesitaba el dll si compilaba estáticamente la lib en mi ensamblado administrado.

Otros consejos

Llamar a la " LoadLibrary " no administrada ¿No funciona?

Hm No estoy seguro acerca de los detalles exactos de por qué sucede esto, pero uso una biblioteca llamada OpenCV y tengo que vincular estáticamente un archivo lib y vincular dinámicamente un archivo dll. Así que creo que es bastante normal que sea así. Creo que parte de la razón de esto es que si el proveedor de la biblioteca actualiza la biblioteca, simplemente puede distribuir un nuevo archivo dll y su código funcionará automáticamente con él: no tiene que volver a compilar todo su programa cada vez que la biblioteca está actualizado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top