1

I have written a simple program.

Recently I found that when giving it a name including update as its substring (case insensitive), the file automatically gets a Windows shield/buckler on it in Windows Explorer.

In the following image, all files are identical except for different file names:

enter image description here

I was wondering if this is because there is a UAC Shield/Buckler Appendage Mechanism in Windows Explorer and its backend parts.

Any suggestions and clues are appreciated.

1

Adding a manifest file is the solution.

Due to the Installer Detection Technology of UAC, a UAC shield icon will be displayed on your 32-bit executable file with no requestedExecutionLevel in the manifest, but with keywords like “install”, “setup”, “update” etc in the filename. With the UAC shield icon, if we launch the executable file, the UAC elevation dialog will pop up.

Source

The manifest should contain a requestedExecutionLevel. Here is an example of a partial manifest file:

 <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="asInvoker"
          uiAccess="false"/>
        </requestedPrivileges>
    </security>
  </trustInfo>

See here for more info.

2

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.