Pregunta

Estoy tratando de actualizar un proyecto de VS2005.Es un proyecto VB.net B que depende de un proyecto C # que hace referencia a una DLL de C ++, A.DLL.Estoy recibiendo un error que dice 'No se puede encontrar ensamblaje A_Class, versión 2.0.0.0, Cultura= Neutral, PublickeyToken= NULL'.La plataforma específica del proyecto C ++ es 4.0 y, ya que ese proyecto depende de los demás, no puedo degradarlo.Pero establecí la plataforma para el proyecto VB.NET a 4.0.¿A qué más se refiere la versión 2.0.0.0?He intentado crear un proyecto nuevo y agregado los formularios de VB después de haberlo construido con éxito.El DLL de C ++ está en el directorio de salida, si el proyecto VB no lo encuentra allí, no llega a este punto.Durante la construcción.O bien obtengo ningún error (pero los formularios no se cargan) o obtengo 2 errores (uno para cada formulario):

error MSB3103: Invalid Resx file. Could not load file or assembly 'A-class, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format. Line 136, position 5.

Por favor, ayúdame, dame una sugerencia, no sé dónde mirar.Muchas gracias.

¿Fue útil?

Solución

"Se hizo un intento para cargar un programa con un formato incorrecto"

99% del tiempo Esto significa que está tratando de cargar un conjunto de 32 bits con herramientas de 64 bits, o viceversa.El número de versión en el mensaje de error solo significa el número de versión del ensamblaje que está intentando cargar;No tiene nada que ver con la versión .net que se está dirigiendo.En este caso, parece que el compilador de recursos es lo que tiene problemas.

Intente configurar su solución para construir explícitamente x86 en lugar de cualquier CPU y ver si eso resuelve su problema.

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