Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to get a 32-bit app to be able to use more than 2GB on my 64-bit edition of Windows 7 Ultimate. Currently, it crashes when it hits 2GB. I've heard there're ways to move this up to 3GB in 32-bit editions of Windows XP, Vista, and 7. Setting increaseuserva doesn't seem to work. (I have 4GB installed. If you're wondering, it's Dwarf Fortress.)

share|improve this question
up vote 3 down vote accepted

According to this MSDN page the maximum address space for a 32-bit process is 4Gb on 64bit Windows 7. But, this requires the process to have the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set.

Setting IMAGE_FILE_LARGE_ADDRESS_AWARE is more of a problem, as it has to be done at the linking stage when compiling the software. See another MSDN page for a bit more info.

You might also wish to see this StackOverflow question, and maybe this one as well, which provide some general info.

share|improve this answer
The LAA flag can be set on an exe after the link. However if the exe assumes that user mode addresses will never be larger than 0x7FFFFFFF it will crash. – Jamie Hanrahan Sep 4 '15 at 21:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .