Desarrollé una aplicación que depende de un archivo DLL. Cuando depuro mi aplicación, la aplicación se queja de que:
"Esta aplicación no pudo iniciarse porque no se encontró xxx.dll".
Así que tengo que copiar el archivo DLL en el mismo directorio que mi archivo .vcproj.
¿Hay alguna manera de configurar el proyecto para buscar el archivo DLL en (preferiblemente) alguna ruta relativa o (no preferida) alguna ruta absoluta?
Concepto similar a cómo establecemos incluir y ruta de la biblioteca en la configuración del proyecto.
Quiero decir que cuando depuro mi aplicación (presionando F5), aparecerá el error anterior.
visual-studio
visual-c++
dll
sivabudh
fuente
fuente
La ruta de búsqueda que utiliza el cargador cuando llama a LoadLibrary () puede modificarse mediante la función SetDllDirectory () . Por lo tanto, puede llamar a esto y agregar la ruta a su dependencia antes de cargarlo.
Consulte también Orden de búsqueda de DLL .
fuente
Ir a través de las propiedades del proyecto -> Rutas de referencia
Luego agregue una carpeta con DLL
fuente
Otra posibilidad sería establecer
Working Directory
debajo de las opciones de depuración para que sea el directorio que tiene esa DLL.Editar: iba a mencionar el uso de un archivo por lotes para iniciar Visual Studio (y establecer la variable PATH en el archivo por lotes). Entonces busqué un poco y vi que esta misma pregunta se hizo hace poco en esta publicación . La respuesta sugiere la opción de archivo por lotes, así como la configuración del proyecto que aparentemente puede hacer el trabajo (no lo probé).
fuente
En las propiedades del proyecto (haga clic con el botón derecho en el proyecto, haga clic en el botón de propiedades) ▶ Propiedades de configuración ▶ Eventos de compilación ▶ Eventos posteriores a la compilación ▶ Línea de comandos.
Edite y agregue una instrucción a la línea de comando. por ejemplo, copie botan.dll desde la ruta de origen a la ubicación donde se está ejecutando el programa.
fuente
Sé que esta pregunta se había respondido hace años, pero para aquellos como yo que necesitaban cambiar el lugar donde el depurador inicia la aplicación, cambie la propiedad del comando en Propiedades del proyecto -> Depuración.
fuente