Recibo el error "Se intentó cargar un programa con un formato incorrecto" en un proyecto de replicación de SQL Server

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

  •  09-06-2019
  •  | 
  •  

Pregunta

El error exacto es el siguiente.

No se pudo cargar el archivo o el ensamblaje 'Microsoft.sqlserver.Replication, versión = 9.0.242.0, cultura = neutral, publickeyToken = 89845DCD8080CC91' o una de sus dependencias.Se ha intentado cargar un programa con Un formato incorrecto.

Recientemente comencé a trabajar en este proyecto nuevamente después de dos meses de pasar a otro proyecto.Funcionó perfectamente antes y revisé todas las referencias.

¿Fue útil?

Solución 2

He encontrado la solución.Recientemente actualicé mi máquina a Windows 2008 Server de 64 bits.El espacio de nombres SqlServer.Replication se escribió para plataformas de 32 bits.Todo lo que necesitaba hacer para que volviera a funcionar era configurar la plataforma de destino en las propiedades de compilación del proyecto en X86.

Otros consejos

El respuesta de calvo a continuación es correcto, pero es posible que también necesite habilitar aplicaciones de 32 bits en su AppPool.

Fuente: http://www.alexjamesbrown.com/uncategorized/could-not-load-file-or-assembly-chilkatdotnet2-or-one-of-its-dependencies-an-attempt-was-made-to-load-a- programa-con-un-formato-incorrecto/

Mientras configuraba una aplicación para ejecutarla en mi máquina local (ejecutando Vista de 64 bits), encontré este error:

No se pudo cargar el archivo o el ensamblado ChilkatDotNet2 o uno de sus Dependencias.Se ha intentado cargar un programa con un formato.

Obviamente, la aplicación utiliza Componentes de ChilKat, pero parece que la versión que estamos usando es solo la de 32 bits.

Para resolver este error, configuré mi grupo de aplicaciones en IIS para permitir aplicaciones de 32 bits.Abra el Administrador de IIS, haga clic derecho en el grupo de aplicaciones y seleccione Configuración avanzada (ver más abajo)

enter image description here

Luego configure "Habilitar aplicaciones de 32 bits" en Verdadero.

enter image description here

¡Todo listo!

Cambie el valor de Platform Target en la página de propiedades de su proyecto web a Any CPU.

enter image description here

Ir a IIS -> Grupo de aplicaciones -> Configuración avanzada -> Habilitar aplicaciones de 32 bits

Recientemente tuvimos el problema al intentar ejecutar el código desde Visual Studio.En ese caso necesitas hacer
HERRAMIENTAS > OPCIONES > Proyectos y Soluciones > PROYECTOS WEB y marque "Usar la versión de 64 bits de IIS Express para sitios web y proyectos".

Para aquellos que obtienen este error en un ASP.NET MVC 3 proyecto, dentro del propio Visual Studio:

En una aplicación ASP.NET MVC 3 en la que estoy trabajando, intenté agregar una referencia a Microsoft.SqlServer.BatchParser a un proyecto para resolver un problema en el que faltaba en un servidor de implementación.(Nuestra aplicación utiliza SMO;la solución correcta fue instalar SQL Server Native Client y un par de cosas más en el servidor de implementación).

Incluso después de que eliminé la referencia a BatchParser, seguí recibiendo el error "Se realizó un intento...", que hace referencia a la DLL de BatchParser, en cada página de ASP.NET MVC 3 que abrí, y ese error fue seguido por docenas de análisis de páginas. errores.

Si esto le sucede, haga una búsqueda de archivos y vea si la DLL todavía está en una de las carpetas \bin de su proyecto. Incluso si realiza una reconstrucción, Visual Studio no necesariamente borra todo en todas sus carpetas \bin.Cuando eliminé la DLL de la papelera y la volví a compilar, el error desapareció.

Tenía esto en una aplicación MVC5 en Windows 10 contra IIS Express.Mi solución fue la siguiente:

  • Herramientas =>
    • Opciones =>
      • Proyectos y Soluciones =>
        • Proyectos Web =>
          • Utilice la versión de 64 bits de IIS Express para sitios web y proyectos

cámbielo a 32 bits (verdadero) funciona

si obtiene esta longitud no puede ser menor que cero.Nombre del parámetro:problema de longitud en la configuración del servidor iis, haga algo simple: cambie la cadena de conexión en el archivo web.config, como el nombre de su servidor SQL y el nombre del servidor, reinicie iis y luego intente cargar la página, funciona.

Si Publicación en Visual Studio 2012 Cuando se produzca un error, intente desmarcar la casilla. "Procompilar durante la publicación" opción en el asistente de publicación.

Un-check

en la aplicación de formulario de Windows hago esto, Haga clic con el botón derecho en Project->Properties->Build->Marque la casilla de verificación Preferir 32 bits.Gracias a todos

  1. Elimine el directorio de prueba temporal que se encuentra aquí C:\Users(User)\AppData\Local emp\VisualStudioTestExplorerExtensions\

  2. Configure todos los proyectos en x64 en Visual Studio

  3. Establezca la arquitectura del procesador predeterminada en x64 (Prueba/Configuración de prueba/Arquitectura del procesador predeterminada).

Asegúrese de crear una compilación limpia del archivo de solución. ¡Espero que esto ayude!

Cambiar Target Framework en las propiedades del proyecto de .NET Framework 4.7.1 a 4.6.2 funcionó para mí.

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