У меня есть приложение ASP.NET 3.5, которое включает 32-битную DLL. Он отлично работает (и работает годами) в Windows XP, 7 и 10. Я добавляю поддержку Windows 2012, 2012 R2 и 2016. Он работает в 2016 году, но не работает в 2012 R2.
При первом обращении к DLL возникает следующая ошибка:
BadImageFormatException: была предпринята попытка загрузить программу с
неверный формат. (Исключение из HRESULT: 0x8007000B)
Один и тот же скрипт сборки и установки используется для всех протестированных ОС. Каждая ОС находится на ВМ на одной машине, поэтому аппаратное обеспечение для всех ОС идентично. Для каждой ОС:
- ОС полностью обновлена.
- vcredist 9.0 (x86) устанавливается как часть установки.
- В IIS DefaulatAppPool включены 32-разрядные приложения.
Я перепробовал все предложения в сообщениях по этой проблеме, но ничего не работает. Есть идеи?