Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 50236|Respuesta: 3

[Fuente] C# coloca las DLL de la biblioteca de referencia en subcarpetas mediante sondeo

[Copiar enlace]
Publicado el 10-11-2020 17:46:35 | | | |
Demanda:

Hay tres tipos de DLLs en el proyecto: demasiadas y desordenadas. Cómo clasificarlos en tres subdirectorios
Como qué:
Dev se coloca en el directorio Devexpress
Coloca tu proyecto de biblioteca de referencia en el directorio Lib
Las DLL de terceros se colocan en el directorio Oth

Cuando desarrollamos en un proyecto grande, veremos que el proyecto hace referencia a muchas DLLs, y quiero poner diferentes DLLs en distintas carpetas según distintas funciones.

Ejemplo:

Nosotros, net2 es un proyecto de consola, hará referencia a la biblioteca de clases ClassLibrary4, la aplicación compilada y el dll estarán en el mismo directorio, quiero poner ClassLibrary4.dll bajo la carpeta de test dentro del directorio del programa, lo ponemos directamente y lanzará una excepción:

Excepción no gestionada: System.IO.FileNotFoundException: No se ha cargado un archivo o ensamblador "ClassLibrary4, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" ni una de sus dependencias. El sistema no puede encontrar el archivo especificado.
   En net2. Program.Main(String[] args)

Solución

Edita el archivo net2.exe.config y añade la configuración de sondeo de la siguiente manera:

Si hay dos DLLs diferentes que hay que poner en dos carpetas distintas, dentro deUsa puntos y coma para indicar diferentes carpetasPor ejemplo:


Código de Library4:

Código Net2:


Prueba a ejecutar el programa que se muestra a continuación:


Comentario:Puedes escribir un script bat y poner la dll de la biblioteca en un subdirectorio durante el tiempo posterior a la generación del ensamblador

(Fin)






Anterior:Ten cuidado con System.Environment.CurrentDirectory para obtener el directorio actual
Próximo:. Conflictos en el conector .NET MySQL DbProviderFactories (Conflictos en el conector .NET MySQL DbP...
 Propietario| Publicado el 10-11-2020 18:18:44 |
Si la dll de C++ se coloca en el subdirectorio del programa, puede configurarse añadiendo variables de entorno

Por ejemplo:

Pon el dll bajo el directorio de prueba



Publicado el 16-7-2021 22:42:52 |
Docto......
Publicado el 25-2-2023 21:18:42 |
De verdad espero que esto sea justo lo que busco
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com