Every time I start The Old Republic launcher/updater, it throws up the UAC prompt. Is this normal? If it isn't (or is I suppose), how do I prevent it without disabling UAC?
5 Answers
It's a bit of a hassle to set up.
Before I start, here's an installer for the end result, if you are willing to trust me. You'll only need to rename the VC redist as described at the end of this answer.
This installer applies Microsoft compatibility shims to remove the "Administrator required" flag from the launcher.
How to create your own Shim database for SWTOR
You'll need to use Microsoft's Application Compatibility Toolkit to apply shims to the launcher.
- First, download and install both the Compatibility Toolkit and the Application verifier.
- Run the Compatibility Toolkit's Standard User Analyzer Wizard. It is located in Start Menu > Microsoft Application Compatibility Toolkit > Developer and Tester Tools
- Enter the location (or browse for) the launcher. It should be in
C:\Program Files (x86)\Electronic Arts\BioWare\Star Wars-The Old Republic
- Click Launch
- Very Important: You should see 2 LUA Prompts: the first for the Standard User Analyser and the Second for the SWTOR Launcher. Accept the first but decline the second.
- The Analyser will ask whether the application ran without problems. The launcher should not have launched (If it did, you may have accepted the LUA prompt I said to decline earlier). Click No
- The Analyser will suggest some mitigations. You should only need
ForceAdminAccess
*, but if it doesn't work, you can check them all; it will only loosen some security in a few extremely specific folders/registry keys. That should not cause any problem in an environment that allows you to play SWTOR. - Click "Launch" to test the settings.
- The launcher should have launched properly without any prompts. If it didn't, click no and select somemore mitigations in step 7.
- Once the launcher works properly, Click Yes then Export to create an msi file containing your fixes.
- Run the generated MSI to install the shims permanently.
There is one last step to take care of every last prompt. In the extras
folder of your SWTOR installation (so C:\Program Files (x86)\Electronic Arts\BioWare\Star Wars-The Old Republic\extras
), there should be a file named vc2008redist_x86.exe
. Rename it to vc2008redist_x86.exe.unused
* Despite the name, ForceAdminAccess
does not automatically grant admin access as if you accepted the LUA prompt. It simply lies to the launcher when it asks whether you are an admin.
-
Copied over from my own answer to this question: gaming.stackexchange.com/questions/44322/… Jan 3, 2012 at 14:21
-
-
1The included MSI applies the ForceAdminAccess shim to the launcher and rundll32 which should only tell the application (launcher in this case) that it is running as an administrator even though it isn't. This is the only shim applied. More information on ForceAdminAccess: technet.microsoft.com/en-us/library/cc766024(WS.10).aspx Jan 3, 2012 at 16:34
-
This was great, thank you. FYI, I actually had to scale back the mitigations and select only ForceAdminAccess on the launcher and rundll32. I'm on Windows 7. Jun 6, 2012 at 23:58
-
Recently the launcher changed and the old shims stopped matching/working, I tried to recreate them on windows 10 and it isn't possible, what I did was to update my swtor on the windows 7 computer, create the msi there and copy+install it in the windows 10 system, worked perfectly. r15ch13 method below also works on windows 10, I just didn't want to keep the program installed– DanAug 5, 2017 at 1:50
For Windows 10 use the following method:
- Install only
Application Compatibility Tools
from Windows ADK for Windows 10. - Run
Compatibility Administrator (32-bit)
- Click on
Fix
in the Menu - Fill in Name, Vendor and Path to the
launcher.exe
- Activate
Run this program in compatibility mode
and selectWindows 2000 (SP3)
- Skip
Compatibility Fixes
page - On
Matching Information
select onlyFILE_DESCRIPTION
,COMPANY_NAME
andPRODUCT_NAME
- Save the Database somewhere. Rightclick on the Database in
Compatibility Administrator
and install it - The Launcher should now start without the UAC prompt
Should look like this:
I successfully run the program using Compatibility Mode for Windows 2000.
Find launcher.exe
and go to the program Properties (Right-click > Properties) > Compatibility tab. There, check the Run this program in compatibility mode for:
box, and select Windows 2000
in the Drop-down.
My specific information: I'm running Windows 7 with or without UAC (on a non-administrator account, of course), and installed to a location outside of my Program Files directory.
Edit: I received negative votes because people thought this solution requires a user to disable UAC. This solution does not require you to disable UAC. I have verified that this works with UAC as well (i.e. does not show the UAC prompt).
-
-
The question says "how do I prevent it without disabling UAC?", and you have UAC disabled. Jul 13, 2012 at 16:59
-
Ah, but under normal circumstances without UAC, you can't even run the launcher (see the other question). Since my solution allowed me to run the launcher as non-admin without UAC, I propose that it will work with UAC, without invoking the UAC prompt.– palswimJul 13, 2012 at 17:05
-
I'd recommend testing this with UAC enabled, and then updating your answer.– FrankJul 13, 2012 at 17:13
-
I have tested this with and without UAC. It runs under a non-administrative account without showing the UAC prompt.– palswimJul 13, 2012 at 17:55
It's possible the update launcher itself specifies that it needs admin privileges in its manifest.
Download Microsoft's LUA buglight tool here to see what is tripping the UAC prompt.
To use this tool, you'll need to run it with UAC on and admin approval mode enabled.
The other way is to use Microsoft's Application compatibility Kit. I'm not going to step through how to use that thing, but if it is the manifest this may fix it.
The shortest and quickest way to do this is unfortunately to disable your UAC settings:
Running as admin or running in a compatibility mode does not make any difference.
There are many and varied opinions on UAC, some people insist on leaving it on, whilst some self proclaimed professionals "never use it". All of them swear by a good firewall and anti-virus. I do not accept any responsibility for anything happening to your PC if you disable UAC. For your information, some of the more interesting talks on SWTOR and UAC can be found through these links:
- http://www.reddit.com/r/swtor/comments/nd4pw/is_there_a_way_to_stop_swtor_launcher_from_asking/
- http://www.swtor.com/community/showthread.php?t=29788
The way that other MMOs have fixed this is by writing to public files on the computer as opposed to system files, SWTOR does not do this (yet), but hopefully they will see the noise on the forums and implement it in a patch soon.
There does appear to be an other workaround that I am currently investigating, and I shall amend this answer once I have confirmed that it works.
I hope this helps.
-
-
@Ramhound: would you mind sharing the rationale for why it's a horrible idea to disable UAC? Jul 2, 2014 at 22:30
-
Security for one. There is no difference between UAC prompt and a request for Sudo in Linux both inform there is a privileged action about to happen. The accepted answer is the best secure solution– RamhoundJul 2, 2014 at 22:33
C:\Program Files (x86)\Electronic Arts\BioWare\Star Wars - The Old Republic
folder already has Everyone assigned the Full control meta-permission in the file system, likely changed to that by the installer.