Год назад я использовал bass.dll в mp3-проекте. В то время я использовал Windows 7, 32 бит. Теперь я на другом проекте, и мне нужно снова использовать bass.dll. На этот раз я на Windows 8.1, 64 бит.BadImageFormatException on bass.dll
Bass_Start() дает мне это исключение, а также все другие функции
An unhandled exception of type 'System.BadImageFormatException' occurred in EZBlocker.exe
Additional information: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B).
Я использую DllImport
импортировать эти функции и bass.dll в в моем проекте.
[DllImport("bass.dll")]
public static extern bool BASS_Start();
try
{
BASS_Start();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
Что мне здесь не хватает, кроме этих тысяч ошибок, которые мне дают 64-битные окна? Это мой первый раз на 64 бит, и я действительно сожалею об этом ...
Какое приложение это приложение? Вы можете установить сборку в x86 в параметры проекта и скомпилировать. Если это веб-приложение, размещенное в IIS, вы можете установить «Включить 32-разрядные приложения» в true на настройках сайта в IIS. См. Здесь http: //code217.blogspot .com/2013/08/aspnet-systembadimageformatexception.html –
Глядя на свой сайт, они поддерживают 64-битную. Но они говорят, чтобы убедиться, что вы используете правильную библиотеку. Поэтому, возможно, стоит проверить, что у вас есть последняя версия .dll, чтобы использовать ее с правильной платформой .NET. –