2009-08-12 20 views
6

Estoy construyendo una DLL Class Library de .NET que depende de otras bibliotecas como log4net.dll. ¿Dónde debo colocar estos archivos DLL al empacar mi DLL? ¿Hay alguna manera de incluirlos automáticamente dentro de una super-DLL? ¿Debo enviar todos los archivos DLL en una sola carpeta bin?¿Cómo/dónde envío bibliotecas de terceros con una DLL .NET?

Respuesta

7

Simplemente envíelos todos en un directorio con su dll (suponiendo que esté hablando de una distribución binaria; en una distribución fuente, tendría un directorio "lib" que contiene sus dependencias).

No se olvide de comprobar si es o no es necesario proporcionar también licencias, instrucciones para obtener el código fuente, etc.

yo no estaría tentado a tratar de combinar la biblioteca de clases con las dependencias, en lo personal.

+1

De hecho hice lo que dijiste que no hiciera en tu última declaración allí. Hice mi proyecto muy complicado y confuso mirando con esa fuente adicional. Entonces, simplemente los desunifiqué. :) – Zack

0

en su árbol de soluciones, tienen una carpeta llamada 'src' para todo el código fuente de Yoru y otra llamada 'lib' para bibliotecas como log4net, su biblioteca dll casera y cualquier otra biblioteca.

5

Debe verificar primero el EULA y otras licencias adjuntas a esas otras DLL. Algunos pueden restringir cómo se redistribuyen sus bibliotecas DLL. Suponiendo que no hay problemas con eso, puede compilarlos todos juntos como una gran DLL, o crear un instalador (o un simple archivo zip) que instalará todas las DLL asociadas en su destino previsto.

0

No sabe cómo se va a implementar su solución, pero no se olvide que para firmar sus bibliotecas de clases que usted necesita tener su 3ra party .dlls firmado. Esto solo puede requerir que combine todas sus referencias.

Cuestiones relacionadas