• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

Large Address Aware

Large address aware is specific to Windows operating systems and executables. LAA should error if it isn't going to work. Worst case scenario: run LAA again and undo what you did.
 
Made a custom exe as defined by wineskin to open the LAA exe since it is not a setup.exe type of install. But this does not work, meaning the LAA doesn't open. Or, perhaps it did error and I don't get an error indication. So, I'll await an answer from Paulthetall, the Wineskin expert and see what he thinks.
I'll post again when I get that answer.
BTW, it does work under Bootcamp. The program runs, presents the screen to select the exe file and then concludes that the exe was successfully changed. Ran the game and all appears good.

Perhaps it is not working under Bootcamp. When I select either the intermediate or advanced mode, select the exe file to make LAA, the LAA column does not change from false to true. However, if use Basic mode, select the exe, select Save, the response says successful. How do I know if the LAA was applied?
 
Last edited:
I have three SH4.exe files in separate folders. When I add these three, execute LAA, only one of these exe's shows as having changed (true) when I select it for making it large address aware. I've tried all three modes to no avail. Am I doing something wrong? I run on XP 32-bit and I applied the boot.ini change(/3GB), rebooted then executed LAA.
 
I have three SH4.exe files in separate folders. When I add these three, execute LAA, only one of these exe's shows as having changed (true) when I select it for making it large address aware. I've tried all three modes to no avail. Am I doing something wrong? I run on XP 32-bit and I applied the boot.ini change(/3GB), rebooted then executed LAA.

I made mods with my borther for SH4. You can play a lot of the ships with it, battle ships and all. Also a very enhanced graphical experince. :)

It's called DDmods and it's pretty easy to find with google. fyi.
 
I have three SH4.exe files in separate folders. When I add these three, execute LAA, only one of these exe's shows as having changed (true) when I select it for making it large address aware. I've tried all three modes to no avail. Am I doing something wrong? I run on XP 32-bit and I applied the boot.ini change(/3GB), rebooted then executed LAA.
It's possible those other two SH4.exe's are not genuine executables. They might be encrypted or incomplete and the one that does change to true executes them. I would run the only one that could be changed to true.
 
It's possible those other two SH4.exe's are not genuine executables. They might be encrypted or incomplete and the one that does change to true executes them. I would run the only one that could be changed to true.

Interesting. All three do run SH4 and I can change the "original" from false to true, but not the LAA to true on the two that won't change. Is there anything to check to see if the change happened? I thought I might just copy the one that I can change into the other two folders and try that. Thanks for your reply.
 
Oh, you're just talking about the "Original" column? That value is saved the first time a program is added to the list. If you believe it is in error (e.g. the LAA bit was changed in a different program prior to running Large Address Aware), you can force the Original value to something else by switching the "Mode" to "Advanced," check the boxes next to the ones you want to change, then under "With Selected," click on "Set Original to True" or "Set Original to False."


If you attempt to change the LAA value and it doesn't accept the change, there can be many reasons for this including:
-executable is running
-executable is read-only
-not a valid win32 application
-executable has some kind of operating system lock on it
-user account Large Address Aware is running on doesn't have sufficient access to modify the file


Large Address Aware is set up to always read/write from the executables themselves. If you really want to force it to re-read all the files, restart Large Address Aware.


...I'm thinking it's getting close to new-GUI time for this program. Should it remain 3-mode like it current one is? One major change will be better error handling (e.g. the LAA part will turn red if there is an error and you hover over it for specific details on why it failed). Any other changes I should make?
 
Last edited:
As feedback, I started with Basic mode but curiosity led me to use intermediate
and advanced where I then saw that the "successful" result from the basic
screen had not changed the LAA column to true. Thus confusion so I no longer use basic. I prefer two modes, drop basic. Still don't get why 2 of the 3 supposedly same .exe's won't change to "true".
Btw, I run under Bootcamp on Mac OSx also, and after running LAA the LAA column does change to "true" but Basic mode says the change was successful.

Duh, I feel like a dummy now. I just checked the properties on the SH4.exe's and the two that wouldn't change from False to True were both Read Only. I unchecked that and both change to True. But, the one that did change to True, well, it was also Read Only. Oh well, too baffling to pursue so all's well with me at this point and I'll go on and play SH4 hopefully with LAA enabled on my 32 bit XP and see far less CTDs than before. Thanks for all your replies.
 
Last edited:
I think my code tries to turn read-only off but that can fail. It apparently succeeded on one of three. XD
 
Would this still be relevant given how long people have had to code for x64?
 
Yes, because many computers have more than 4 GiB of RAM but most applications are still 32-bit. Enabling the large address aware bit allows 32-bit applications to use 4 GiB of RAM instead of 2 GiB.
 
on a 32 bit OS, the apps would crash whether this was changed or not when it hit 2GB, so most developers still just leave it alone, since they dont want to alienate whats left of the pure 32 bit user base.
 
This has enabled me to use Corel's rather crappily coded PSP X3 again, without frequent "out of memory" -errors. Problems began when I swapped my EOS 20D for an EOS 7D, and now that I routinely handle panoramas up to 150 megapixel or even more, the 2GB limit just didn't cut it anymore.

So, I just registered to say THANK YOU!
 
I added Corel Paint Shop Pro X3 to the list. Thanks for letting me know.
 
I multithreaded Add Files and fixed a bunch of other stuff. Let me know if commiting the changes (the top options in "With Selected") is still slow or not.
 
What's that supposed to mean?


I multithreaded Add Files and fixed a bunch of other stuff. Let me know if commiting the changes (the top options in "With Selected") is still slow or not. Note: I did not multithread that portion yet and don't intend to unless necessary (no computer should be burdened by writing one byte per file :roll:).
 
( ͡° ͜ʖ ͡°)
 

Attachments

Last edited:
Because it modifies executables that are usually found in Program Files. Files inside of Program Files can't be modified without administrator rights.
 
AsInvoker would use the same rights as explorer.exe which, if you don't have administrator rights, would be Limited User. The application would not be able to perform its objective.

You'll have to have someone with administor rights run it, flip the LAA bits, verify the software still works, then log back in as your limited user account. Once the modifications are applied, they will stay there until the software is updated/modified/changed.

I'm afraid there is nothing I can do to get around that security feature of Windows.
 
Last edited:
"Parent process" would be explorer.exe.

I attached a version with "asInvoker" if you want to try it. I can't test on my system because I have no limited user accounts and UAC disabled.

If it failed, it will say in the status bar.


Edit: The purpose of "asInvoker" is so that only one application needs to request elevated permissions then it can pass those permissions to subsequent executables. For example, if you have your main program and and an updater, the updater would run with asInvoker so it is passed the credentials from the main program foregoing a second request for elevated permissions.

"highestAvailable" is default and even on an administrator account, that's inadequate. Windows doesn't give administrator access unless the user grants it. Highest available, therefore, doesn't return administrator even if it is an administrator logged in. This is why it is set to "requireAdministrator." UAC gets cranky when applications try to open write streams on other applications. That's exactly what LAA does.


Attachment removed.
 
Last edited:
6 downloads and no one has said anything. If it doesn't work in a Limited User account, I'm going to remove it. If it does work, I'll move it to the OP.
 
So you're saying it didn't work? I'll remove the attachment then.
 
Back
Top