No se pudo cargar el archivo o ensamblado X o una de sus dependencias. no es una aplicación win32 válida. (HRESULT: 0x800700C1)

SO: Windows 8.1 64

Traté de reproducir múltiples sonidos en VB.Net con DirectX, no hay errores en mi código. El problema es que cada vez que se activa el evento obtengo este error

System.BadImageFormatException no se manejó Mensaje: se produjo una excepción no controlada del tipo 'System.BadImageFormatException' en System.Windows.Forms.dll Información adicional: No se pudo cargar el archivo o ensamblado 'Microsoft.DirectX.AudioVideoPlayback.dll' o una de sus dependencias. no es una aplicación win32 válida. (Excepción de HRESULT: 0x800700C1)

Luego configuré Target CPU en x86 y obtuve este error

System.IO.FileLoadException no se manejó Mensaje: se produjo una excepción no manejada del tipo 'System.IO.FileLoadException' en System.Windows.Forms.dll Información adicional: El ensamblaje de modo mixto se compila en la versión 'v1.1.4322' del tiempo de ejecución y no puede cargarse en el tiempo de ejecución 4.0 sin información de configuración adicional.

Hasta ahora he intentado desinstalar-reinstalar DirectX SDK, instalar todo lo que tiene que ver con DirectX y diferentes archivos de sonido (.wav). También tuve que buscar para cargar los archivos .dlls, no pude encontrarlos en el Administrador de referencias> Ensamblados, pero ahora ni siquiera puedo cargarlos a través de la exploración, así que usoImports Microsoft.DirectX.AudioVideoPlayback Me permitirá importar el resto .dlls excepto (el Administrador de referencias ni siquiera los abrirá):

Microsoft.DirectX.AudioVideoPlayback.dll
Microsoft.DirectX.dll
Microsoft.DirectX.DirectSound.dll

los que necesito ¿Hay alguna manera de limpiar reinstalarlos?

Marco objetivo: .Net Framework 4.5

CÓDIGO:

Dim MySound1 As New Microsoft.DirectX.AudioVideoPlayback.Audio("D:\path\sound_file.mp3")

MySound1.Play()

Avísame si necesitas saber algo más.

ACTUALIZAR: Cambié elTarget Framework a.Net Framework 3.5 y funciona bien pero solo si elCPU Target se establece enx86! ¿Porqué es eso?

Respuestas a la pregunta(1)

Su respuesta a la pregunta