Запуск 32-битного приложения Borland XE2 под 64-битной Win 7 с переключателем / 3gb (-GF LARGEADDRESSAWARE)?

Как следует из названия, я запускаю 32-битное приложение под win 7 64-битной. Приложение выполнено на C ++ в Embarcadero XE2. Мне нужно более 2 ГБ памяти.

шаги:
— Я включил переключатель 3GB и перезагрузил компьютер.
— Я попытался добавить -GF: LARGEADDRESSAWARE к параметрам проекта / c ++ linker / Флаги вывода, но затем не удалось связать. Там сказано: «Сбой команды GF:» или что-то в этом роде.
Затем я нашел на форуме, что вы должны сделать это вручную в файле .bpr в разделе FLAGS. Я добавил флаг, а затем связал проект. Тем не менее, индикатор доступной памяти в приложении говорит мне, что я все еще получаю менее 2 ГБ.

Вопросы:
1. как правильно сделать эту работу?
2. как узнать есть ли у меня 3gb памяти или нет?

заранее спасибо

2

Решение

/3GB Переключатель только для 32-битных систем. Ваша система является 64-битной системой. Это означает, что 32-битный исполняемый файл с LARGEADDRESSAWARE Флаг PE будет иметь адресное пространство 4 ГБ. Не пытайтесь использовать /3GB вариант загрузки.

Вы можете проверить, имеет ли ваш исполняемый файл LARGEADDRESSAWARE Флаг PE устанавливается с помощью любого инструмента просмотра PE. С инструментарием MS вы бы использовали dumpbin, Эквивалентный набор инструментов Embarcadero tdump, Кроме того, есть бесчисленные зрители GUI PE. Найдите инструмент, который работает, и убедитесь, что вы правильно установили этот флаг PE.

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]