Вирішення питань, пов’язаних з винятками ageFormatException, Microsoft Docs

Виняток BadImageFormatException виникає, якщо образ файлу DLL або програма, що виконується, не є допустимим файлом.

Корисні поради

Якщо в додатку використовуються 32-розрядні компоненти, необхідно забезпечити, щоб він виконувався як 32-розрядний додаток. Якщо для властивостіКінцева платформа проекту програми встановлено значенняAnyCPU, скомпільований додаток може виконуватися як у 64-, так і в 32-розрядному режимі. Коли програма виконується як 64-розрядна, JIT-компілятор створює 64-розрядний машинний код. Якщо програма залежить від 32-розрядного керованого або некерованого компонента, цей компонент не буде завантажений у 64-розрядному режимі. Щоб вирішити цю проблему, встановіть для властивості проектуКінцева платформа значенняx86 і виконайте повторну компіляцію.

Переконайтеся, що не використовуються компоненти, створені за допомогою іншої версії .NET Framework. Це виняток виникає, коли програма або компонент, який був розроблений з використанням .NET Framework 1.0 або .NET Framework 1.1, намагається завантажити збірку, яка була розроблена за допомогою .NET Framework 2.0 з пакетом оновлень 1 (SP1) або пізнішої версії, або коли програма, розроблена з використанням .NET Framework 2.0 з пакетом оновлень 1 (SP1) або .NET Framework 3,5 , намагається завантажити збірку, яка була розроблена за допомогою .NET Framework 4. Виняток BadImageFormatException може виявлятися як помилка часу компіляції, або цей виняток може виникати під час виконання. Див. приклад опису класу BadImageFormatException.

Переконайтеся, що образ файлу - це допустимакерована збірка або модуль. Це виняток виникає, коли некерована бібліотека динамічної компонування (DLL) або файл, що виконується, передається методу Load для завантаження.

Додаткові відомості для користувачів Visual Basic див. у розділі Виправлення неполадок взаємодії (Visual Basic).

Додаткові причини цього виключення див. в описі класу BadImageFormatException.