What are the side effects of using the IMAGE_FILE_LARGE_ADDRESS_AWARE flag?

What are the side effects of using the IMAGE_FILE_LARGE_ADDRESS_AWARE flag (to use more than 2 GB of RAM) in my program?

I am using Delphi 7 with FastMM4.

+4
source share
1 answer

You need to make sure that you are not using the built-in memory manager and not using something that can support addresses> 2 GB. e.g. FastMM.

You may have another code, usually a third-party code, in your code base that will drop from addresses> 2 GB. I personally deal with this by working under the 64-bit version of Windows and forcing the system to use memory allocation from top to bottom using the registry setting .

When you do this, you may encounter some errors in Windows. For example, GetCursorPos in Vista fails if its parameter address is> 2 GB. I am working on this by fixing a Windows.GetCursorPos version that goes through GetCursorInfo . This error was fixed in Windows 7, but MS decided not to return it to Vista.

I cannot stress enough how important it is to work with the memory allocation turned on from top to bottom.

+4
source

Source: https://habr.com/ru/post/1334053/


All Articles