Microsoft’s Application Compatibility Toolkit 5.0 is mostly for bigger companies that have to evaluate and mitigate application compatibility issues before deploying Vista. I have downloaded it before, but I found it too complex for a quick look. Some days ago, I stumbled across a post in the vista4beginners blog that seemed to have a solution for a UAC problem I had before. It describes how to disable UAC prompts for certain applications only. Unfortunately, it did not really work as I expected. But, at least, it made me play with the Compatibility Administrator which belongs to the Compatibility Toolkit.
- Pip install Boto3 - Thu, Mar 24 2022
- Install Boto3 (AWS SDK for Python) in Visual Studio Code (VS Code) on Windows - Wed, Feb 23 2022
- Automatically mount an NVMe EBS volume in an EC2 Linux instance using fstab - Mon, Feb 21 2022
This tool is quite interesting and it might be helpful if you have an application that is not running properly under Vista. Basically, you use the tool to configure how Vista treats a certain legacy application. For example, you can tell Vista not to use its virtualization mechanism when a legacy app tries to write in forbidden areas. There are countless other settings.
The parameter that helps solve most compatibility issues is probably “RunAsAdmin”. Most of the legacy apps that have problems under Vista just have to be started with admin privileges to run, properly. Vista’s UAC has some mechanisms that automatically detect if a program has to be elevated, but sometimes this doesn’t work, properly.
The Compatibility Administrator comes with a database of legacy apps and the corresponding remedies to make them work under Vista. Perhaps you are lucky and your problematic application is among them. You can also use the examples in this database to get an idea how compatibility issues can be solved.
The one described in the vista4beginners blog uses the RunAsInvoker parameter which makes sure that an application runs with the same privileges as the parent process. For instance, if a program is configured to run with admin privileges under normal conditions, you can make sure that it will only be launched with standard user rights which will prevent UAC from prompting for consent.
If you want to get an idea how the Compatibility Administrator works, I recommend following the step-by-step guide in the vista4beginners blog. It will show you how to use the RunAsInvoker parameter to prevent UAC from issuing a prompt once the application is configured to run with admin privileges. Note that the reason why Vista doesn’t issue a UAC prompt in this example is because it just launches the app with standard user rights.
More information about the important parameters RunAsInvoker, RunAsHighest and RunAsAdmin can be found here. An interesting question certainly is how to deploy sdb files in your network. This technet article gives you an idea how it can be done.