Добрый день.
Есть некая x32 dll, которую невозможно перебилдить под 64 бита.
Есть ASP.NET сайт которому для работы нужна эта длл, и который будет работать в 64разрядной винде.
Собственно вопрос — как все это заставить работать?
Если билдить сайт для Any CPU, то сайт работает, но при PInvoke .NET говорит, что дллелька — BadImageFormatException.
Если же сайт билдить под x86, так он даже не запускается, говорит BadImageFormatException при загрузке одной из сборок.
Вобщем то я в тупике. Единственный способ, который я вижу — это сделать 32 разрядное нативное приложение, которое будет дергать dll, и как нить передовать данные сайту, но как то криво это...
Здравствуйте, Jack128, Вы писали:
Установи правильные флаги для скомпилированного приложения через corflags.exe.
Инструкция и причины возникновения ошибки
тут.
Здравствуйте, wety, Вы писали:
W>Здравствуйте, Jack128, Вы писали:
W>Установи правильные флаги для скомпилированного приложения через corflags.exe.
W>Инструкция и причины возникновения ошибки тут.
не, в этой статье говорится, как указать будет ли приложение 32битным или 64битным _после_ компиляции. Но у мя то сорцы приложения на руках, я уже по всякому компилил, повнимательней прочитай первый пост.
А я в результате таки сделал хостовое приложение. пол дня работы, зато железобетонно работает.
Здравствуйте, Jack128, Вы писали:
J>Добрый день.
J>Есть некая x32 dll, которую невозможно перебилдить под 64 бита.
J>Есть ASP.NET сайт которому для работы нужна эта длл, и который будет работать в 64разрядной винде.
Перевести IIS в 32-битный режим
Configuring IIS to Run 32-bit Applications on 64-bit Windows (IIS 6.0)
IIS7 — Running 32-bit and 64-bit ASP.NET versions at the same time on different worker processes