PInvoke 32разрядной dll в win64
От: Jack128  
Дата: 27.08.10 06:31
Оценка:
Добрый день.
Есть некая x32 dll, которую невозможно перебилдить под 64 бита.
Есть ASP.NET сайт которому для работы нужна эта длл, и который будет работать в 64разрядной винде.
Собственно вопрос — как все это заставить работать?
Если билдить сайт для Any CPU, то сайт работает, но при PInvoke .NET говорит, что дллелька — BadImageFormatException.
Если же сайт билдить под x86, так он даже не запускается, говорит BadImageFormatException при загрузке одной из сборок.

Вобщем то я в тупике. Единственный способ, который я вижу — это сделать 32 разрядное нативное приложение, которое будет дергать dll, и как нить передовать данные сайту, но как то криво это...
Re: PInvoke 32разрядной dll в win64
От: wety Россия  
Дата: 30.08.10 13:44
Оценка:
Здравствуйте, Jack128, Вы писали:

Установи правильные флаги для скомпилированного приложения через corflags.exe.
Инструкция и причины возникновения ошибки тут.
Re[2]: PInvoke 32разрядной dll в win64
От: Jack128  
Дата: 01.09.10 10:33
Оценка:
Здравствуйте, wety, Вы писали:

W>Здравствуйте, Jack128, Вы писали:


W>Установи правильные флаги для скомпилированного приложения через corflags.exe.

W>Инструкция и причины возникновения ошибки тут.

не, в этой статье говорится, как указать будет ли приложение 32битным или 64битным _после_ компиляции. Но у мя то сорцы приложения на руках, я уже по всякому компилил, повнимательней прочитай первый пост.

А я в результате таки сделал хостовое приложение. пол дня работы, зато железобетонно работает.
Re: PInvoke 32разрядной dll в win64
От: Аноним  
Дата: 03.09.10 17:14
Оценка: 12 (1)
Здравствуйте, 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
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.