“System.IO.FileNotFoundException: No se pudo cargar el archivo o ensamblado” cuando el montaje de hecho existe

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

Pregunta

Como parte de la migración de .NET 1.1 a .NET 3.5, hemos tenido que cambiar unas cuantas DLL vendedor.

Uno de ellos nos está dando problemas en lugar de solamente 1 de los 4 puntos que utilizamos en:

El punto de conflicto es un proyecto de formularios Windows que utiliza la reflexión para cargar dinámicamente algunos archivos DLL que se ejecutan los procesos de larga duración. Uno de estos procesos de larga ejecución es un agente que se basa en uno de nuestros DLL vendedor

Estamos recibiendo la excepción de montaje faltante en el punto en el que entramos por primera vez una función que hace referencia a la biblioteca. Ya revisé las cosas tontas como si hubiéramos olvidado de mover una referencia de la versión anterior a la nueva versión, pero ese no es el caso. También comprobé el directorio bin del proyecto y el conjunto está allí.

ha encontrado a nadie una situación en la que el tiempo de ejecución .NET 2.0 se niega a cargar un ensamblado de esa manera? Y si es así, ¿cómo podemos solucionar el problema.

Información adicional:

El proveedor específico, en este caso es dtSearch y este es el sitio limítrofe donde el error se tira:

Private Sub BuildIndex()
    SetIndexOptions()
    ExecuteIndexJob()
End Sub

Private Sub SetIndexOptions()
    'Body removed for brevity
End Sub

La biblioteca se hace referencia en SetIndexOptions. BuildIndex() se entró, pero la excepción ocurre cuando se llama a SetIndexOptions. de hecho nunca se introdujo la función.

¿Fue útil?

Solución 3

Resulta que la opción de compilación por defecto cambia de VS2003 a VS2008 y estaba compilando en el valor de bits equivocada: \ Ahora me siento un poco tonto

Otros consejos

Si usted todavía está teniendo problemas puede utilizar el Asamblea Encuadernación Visor de registro ( Fuslogvw.exe) para identificar qué conjuntos se cargó por su aplicación. Esta herramienta es parte de .NET Framework. Esto le proporcionará información detallada sobre todos los ensamblados dependientes.

He utilizado este en el pasado cuando se trabaja con conjuntos de terceros, muy útil

El FileNotFoundException puede ser elevado, incluso cuando existe el conjunto de si uno de los conjuntos dependientes no se pudo cargar.

Intente utilizar Dependency Walker para comprobar y ver que todos los conjuntos dependientes también están presentes.

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