PDA

View Full Version : Take UAC Dialog Out



sakurakt
06-14-2006, 03:32 AM
I would like to take UAC Dialog out which comes up when you try to launch an installer on Windows Vista. I heard it is possible with an exe file made with VC++ or something if you have a proper signature and manifest, but I cannot find a way to do that with InstallShield 12. Does anyone have information about it? Thank you.

sakurakt

MichaelU
06-14-2006, 09:34 AM
Perhaps you are looking for the "Required Execution Level" option on the Release Grid? This is only effective for Basic MSI and InstallScript MSI projects, however. If you are using a pure InstallScript project you may need to look into modifying the embedded manifest manually, and test it to make sure there are no ill effects for your case.

sakurakt
06-15-2006, 04:01 AM
Thank you for you reply. Unfortunately, I am not. I know that option but it does not help to hide UAC Dialog, right? I think I should have said that I would like to bypass the Vista UAC Dialog when you try to launch an installer. I am using a pure InstallScript project. Is it impossible? Thank you.

MichaelU
06-15-2006, 10:01 AM
There is no builtin method for it at this point. If you have a resource editor such as the one in Visual Studio, you can open up the setup exe and modify its manifest file (resource ID 24). It's an embedded file of the same format as any normal .exe.manifest. Please share back if you have success doing this, or any problems along the way.

I'd like to clarify one thing: if you need administrator privileges for the install, you cannot work around the UAC dialog on Vista short of turning it off on the target machine. The manifest edit is only potentially useful if you are trying to make a limited user install.

sakurakt
06-18-2006, 11:36 PM
Thank you very much for your information, I will try it soon and then I will share my results.

My installer needs administrator privileges for the install, but it is not launched by a standard user, as per the design of our system. If my installer has a proper manifest modified as you have told me, plus a signature, does it help to turn off the UAC Dialog if the installer is launched by an administrator?

MichaelU
06-19-2006, 10:31 AM
No, it will not. Programs running in full administrator mode can silently launch others, but either Explorer is not running in that mode, or it is explicitly launching programs that require administrative privileges with the UAC prompt.

The only way to guarantee no UAC prompt is to run as a limited user. On select controlled machines you can disable it for other scenarios, but that's no good in the wild. Of course since Vista hasn't been released, things may change. I expect this part will not change.

sakurakt
06-19-2006, 10:46 PM
Thank you for you reply, indeed. I understand what you have told about Explorer. Could I ask something a little bit different, please? How about Windows Service? If an installer is launched by Windows Service after proper installing like its upgrading, does it work without the UAC prompt? Windows Services seem to work as SYSTEM user, I am not sure if they have administrator privileges on Vista.

MichaelU
06-20-2006, 10:46 AM
I haven't had a chance to experiment with that one, but if you mean by a particular service (rather than as a service by Windows itself) it would probably depend on how the service is coded. SYSTEM is more powerful than Administrator (unless they changed it), so the service is likely running with at least administrator privileges. If it just does a CreateProcess, I would expect it to launch the application without UAC prompting no matter what manifest is being used. Fortunately the UAC dialogs at program launch seems to be a launcher-side opt-in.

sakurakt
06-26-2006, 11:47 PM
Sorry for my late reply. I tried to change the manifest of my installer but it just reduced its size down to less than 500KB from 10MB when I saved. The installer modified did not run at all. I used Visual Studio 2005 as a resource editor. Have you got any ideas? Thank you.