Здравствуйте, Аноним, Вы писали:
А>Обзор проблем совместимости для 32-разрядных программ в 64-разрядных версиях Windows
А>В дополнение можно отметить что указатели в х64 стали 8 байт вместо 4.
А>Соответственно если при объявлении структур или сигнатур методов Interop, подразумевающих в качестве полей или параметров указатели, используется int (Int32) вместо IntPtr, проблем не миновать.
Спасибо за ответ.
Насколько я понимаю наиболее простое решение — заставить приложение работать как 32-х битное.
А оно будет так работать (согласно информации полученной по вашей ссылке) при выполнении следующих условий:
• Эта программа имеет установленный бит ILONLY в сведениях заголовка.
• Эта программа была скомпилирована с помощью Microsoft .NET Framework 1.1.
Если данная программа не имеет установленного бита ILONLY в сведениях заголовка или если она была скомпилирована с помощью Microsoft .NET Framework version 2.0, эта программа будет запущена как «родная» 64-разрядная программа.
Моя программа имеет установленный бит ILONLY, но вот скомпилирована она была на Framework 2.0.
Что нужно сделать чтобы скомпилировать прогу на Framework 1.1?
Нельзя ли обойтись настройками проекта?