If you are just getting started with using manifest files to configure UAC elevation prompts, it can be difficult to remember what the options are and what to do if there is already a manifest. The following is a complete sample template of an application manifest and is commented so that you can…
easily keep track of this information. These comments are ignored when the file is processed, so they can be left in permanently so that your manifests are self-documenting. You can even add some comments of your own to tell why the manifesting was done.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
CSI-Windows.com Commented Sample Manifest File http://csi-windows.com/toolkit
EXISTING MANIFEST - if one is present, always use the EXISTING manifest
(internal or external) as your starting point.
ASSEMBLY SECTION - this section does not have to match the actual EXE if
there was no previous internal or external manifest with the original
TRUSTINFO SECTION - here are the values for level
"requireAdministrator" - prompt for administrator if not already.
"highestAvailable" - prompt for highest token available.
"asInvoker" - do not elevate (even if detected by setup hueristics.)
COMPATIBILITY SECTION - this section allows you to specify that an
application has been designed to be compatible with certain versions
of the operating system. Specifying these settings also disables
Program Compatibility Assistant (PCA) (Autoshimming by the OS).
Administrators who have re-engineered the install of an application or
shimmed it to make it compliant with Windows 7 can use a manifest to
prevent the operating system from UAC virtualizing or running PCA.
REASON FOR MANIFEST:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<description>Optional description of your application</description>
<!-- COMPATIBILITY SECTION SPECIFIES IF APP IS COMPLIANT
DISABLES PCA IF SPECIFIED -->
<!--The ID below indicates application support for Windows Vista -->
<!--The ID below indicates application support for Windows 7 -->
<!-- TRUSTINFO SECTION SPECIFIES REQUESTED PERMISSIONS AND
UIPI DISABLEMENT (SPECIAL CONDITIONS APPLY TO UIPI DISABLEMENT)-->