I have a legacy setup program that will not install on a 64 bit version of Vista with 4GB of RAM. The setup program performs a check at the beginning of the installation to see if there is enough memory. It determines there is "less than 256K of RAM." I assume this is because of a signed 32bit number being used in there math.
I imagine I could take some memory out of the computer and try it. I will as a last resort. But, I was hoping there may be some setting or command line option to get Vista to report less than 4GB to the setup.exe process.
Does anyone know of a way to do this?
Use BCDEdit to set truncatememory option. That will limit your memory.
To use it first check what BCD entries you have with
Remember id of wanted entry and then use
This will limit it to 1 GB.
Another alternative is to run Windows in a virtual machine like Virtualbox. Then you can sandbox the application and run it with as much or as little memory as you'd like, as well as run with an older version of Windows if you have licensing available to do so (if it's a compatibility issue).
One of the available compatibility shims in Windows is "GlobalMemoryStatus2GB". This might be enough. Look in the Application Compatibility Toolkit.