begood Posted May 15, 2010 Report Posted May 15, 2010 About VistaUACMaker Vista has introduced new feature called UAC (User Account Control). In short it basically controls the way in which applications are executed by different users. Due to enforcement of this UAC, by default any application on Vista will run under the context of standard user instead of administrator. As a result the application which requires administrator privilege will fail to work properly on Vista. So VistaUACMaker is designed to address this problem by making any Windows XP based application compatible with Vista as well as Windows 7. Making Application Vista UAC Compliant To make any application Vista UAC compliant one has to embed a manifest file specifying the privilege required by the application. Manifest file mainly contain 2 important information, privilege required by the application and UI interaction of application with other windows. There are 3 types of privileges that can be mentioned in the manifest file. requireAdministrator : Run as administrator asInvoker : Run as same privilege as parent process highestAvailable : Run with highest privilege available for user Other than this, one has to specify if the application interacts with user interface of other high privilege applications. For example your application may send the message to modify the UI of other high privilege application. This is specified through following parameter uiAccess : TRUE/FALSE UAC Manifest File Manifest file is generally put into the resource section of the application. Typical manifest file with administrator privilege and with no "uiAccess" appears like this. [SIZE=2]<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity type="win32" processorArchitecture="*" version="1.0.0.0" name="MyApplication.exe"></assemblyIdentity> <description>Vista Application</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" language="*" processorArchitecture="*" publicKeyToken="6595b64144ccf1df"></assemblyIdentity> </dependentAssembly> </dependency> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges> <requestedExecutionLevel level="requireAdministrator" uiAccess="FALSE"></requestedExecutionLevel> </requestedPrivileges> </security> </trustInfo> </assembly>[/SIZE] VistaUACMaker in Action VistaUACMaker has both console and GUI version. Here is the screenshot of the GUI version Here is the screenshot of the Console version... Using VistaUACMaker GUI version In just 3 steps, your application will be ready to run on Vista/Win7 Select the application using browse button.Set one of the privilege required for your application from selection box.Check the "Yes" button if your application interacts with high privilege applications. Once you have made the settings, click on "Make It" button. Now your application will automatically run as per the privilege set rather than usual "standard user" account. Using VistaUACMaker Console version Console tool makes it easy to automate the process. For example you can use it as post build step to make the application Vista/Win7 UAC compliant. Here is the typical usage information. VistaUACMakerConsole [-d <description>] [-p <priv level>] [-ui] {exe_path} Options: -d Description of the project ( Default : My project ) -p Privilege level required. possible values : admin, invoker, highest admin = administrator invoker = same as parent process highest = Highest possible level for the user -ui Specify if the executable interacts with higher windows. (Default action is not to set this flag) Example: VistaUACMakerConsole -d "Vista project" -p admin "c:\project.exe" History Version 2.0 : 13th Jan 2010 Support for Windows 7. New attractive GUI with cool look & feel. Version 1.5 : 29th May 2009 Enhanced user interface with improved about dialog. Version 1.0 : 30th Jan 2006 First public release of VistaUACMaker Download VistaUACMaker FREE Download VistaUACMaker GUI Version 2.0 FREE Download VistaUACMaker Console Version 1.5 License : Freeware Platform : Windows XP, 2003, Vista & Win7 Download Quote