2010-12-17 25 views

Respuesta

9

normalmente Tenemos una carpeta separada llamada dlls o algo donde guardamos todas las DLL tercera parte/asambleas

+1

¿Lo pones en la carpeta de la solución (carpeta superior del proyecto): ./dlls o en/nombre del proyecto/archivos? – Jason94

+2

Sí, lo guardamos con la solución. –

+0

Yo que he especificado un "directorio de soluciones", las guardo donde se genera mi archivo .exe (cutable). Eso está bajo: $ (SolutionDir) \ Debug. –

9

Usted no debe poner nada de la bin/Debug o bin/Liberación en su control de código fuente. Si lo hace, los perderá cuando limpie su solución o sus proyectos. Lo que tienes que hacer es crear una carpeta, dentro de la carpeta de la solución por ejemplo, y hacer referencia a las dlls en tus proyectos. Cualquier dll de terceros que esté en las referencias de un proyecto se copiará en la carpeta bin/Debug o bin/Release cuando se compile el proyecto.

12

Supongo que está preguntando por archivos dll de terceros, porque los archivos de salida (exe/dll) generados por el proyecto se dejan mejor no administrados por SVN, porque se regeneran en cada compilación.

Lo que normalmente hago es crear una carpeta Lib, que está en el nivel superior de mi árbol fuente, y poner allí todas las referencias necesarias, generalmente en una carpeta adicional dividida por herramienta o por funcionalidad (logging, emailing, apis, etc. , etc ...)

0

Dlls solo son necesarios durante el tiempo de ejecución. Para una solución rápida, puede copiar sus dlls en la carpeta Debug donde está su archivo .exe. Esta carpeta de depuración está en el mismo nivel que el archivo .sln de la solución en Visual Studio. Qué cosa tendrá que hacer cada vez que inicie un nuevo proyecto ... Debug folder

Una mejor solución sería copiar todas las DLL de terceros, más todos los archivos .h y .lib correspondientes, en 2 carpetas, por ejemplo C: \ dev \ include y C: \ dev \ lib, y luego agregue estas 2 carpetas a su variable de entorno de ruta de una vez por todas. De esta forma, podrá acceder a ellos desde todos sus proyectos, sin tener que copiarlos una y otra vez.

Ahora, si desea que alguien pueda ejecutar su proyecto en otra computadora, deberá copiar todos los archivos .h, .lib y .dll necesarios en su proyecto en carpetas separadas que cree, por ejemplo include y lib nuevamente, en su directorio de proyecto donde están sus propios archivos de programa, como se mencionó en las publicaciones anteriores. Project folder

PS. Lo siento, no me permitió subir las 2 capturas de pantalla, así que haz clic en los enlaces.

0

Normalmente lo pongo en una carpeta Lib dentro de mi carpeta de solución de proyecto Visual Studio. También crearía subcarpetas para indicar si el dll es para una compilación de 32 bits o de 64 bits y también qué versión de Visual Studio se utilizó para compilarlo. Entonces algo como esto: Lib \ WIN32 \ VC2015 \. Luego, en las propiedades del proyecto del proyecto, bajo la Depuración configuración de la propiedad, me puse Medio Ambiente a

PATH = $ (SolutionDir) Lib \ WIN32 \ VC2015;% PATH%

Al hacer esto, puedo tener carpetas dll separadas para diferentes configuraciones de proyecto si quiero y también los archivos dll están en un buen lugar para verificar también en el control de fuente.

Cuestiones relacionadas