2012-06-15 17 views
5

He creado y compilado el servicio de Windows usando .NET 4.0 Así que voy a la carpeta .NET 4.0 y digo algo como esto: Copié la carpeta bin a la unidad C para acortar la ruta:BadImageFormatException error al usar la herramienta InstallUtil

InstallUtil.exe "C: \ bin \ Debug \ MyTestService.exe"

y este es el error que consigo:

Excepti se produjo al inicializar la instalación: System.BadImageFormatException: No se pudo cargar el archivo 'archivo: /// C: \ bin Debug \ MyTestService.exe' o una de sus dependencias. Se intentó cargar un programa con un formato incorrecto ..

Así que no sé qué hacer.

+0

Hmm: aparece el mensaje de error .... C: \ bin Debug ... es decir, espacio en lugar de \. –

Respuesta

16

Ese error ocurre cuando utiliza la versión incorrecta de installutil. Por ejemplo, está utilizando installutil.exe para .NET 2.0, pero su objetivo de ejecución está construido con 4.0 o está utilizando una versión de 32 bits de installutil en un dll/exe de 64 bits.

+5

+1 porque esto es correcto pero, más importante aún, me reí de tu biografía. –

+0

Este error también ocurre cuando intenta cargar un servicio desde una ubicación de red con una versión .NET mayor que 2.0 sin CAS activado. – MatUtter

0

Fue construido en VisualStudio con "AnyCPU", pero estaba usando la versión X64 de Install util, lo cambié a explícito, lo construí para la máquina X64 y me deshice de ese error. Sin embargo, ahora está diciendo algún otro error, pero este error se resuelve.

+0

¡Me salvaste el día! ¡Gracias! – Matheno

0

I set es como AnyCPU para las configuraciones de 32 bits y 64 bits. Funcionó.

Cuestiones relacionadas