I have a custom installer application built with C++/ATL. The application's target platform is XP3, VS solution consists of static lib and exe projects. The application always to be started elevated, i.e. as Administrator
When I run it from Visual Studio (VS itself is started as Administrator) then everything is fine, PCA is never shown. When I run it on the same machine from Explorer then PCA is also never shown.
However, when I run it on a fresh Windows 7 machine then PCA is always shown, no matter if I start it from elevated or non-elevated Explorer.
Manifest-related section in project properties is set like this: http://screencast.com/t/70GOcbf243
What do I do in order to get rid of PCA on the second machine? Thank you!
I think you should rename your application. There are some hard-coded names which forces the PCA... like:
See also: Custom installer without warning dialog… (TrustedInstaller.exe)
As an alternativ, you can add the OS compatibility section in your application manifest to prevent the PCA. Ad the following to your application manifest:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!--The ID below indicates application support for Windows Vista -->
<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
<!--The ID below indicates application support for Windows 7 -->
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
</application>
</compatibility>
</assembly>
For more info, see also Application Manifest