I have an application that is giving a UAC prompt when the users run it, but the application has no need for administrative privileges. This happens because Windows is looking through the application an has found a reference to a word (either setup, install, patch or update) in the binary that it thinks identifies the application as an installer. Typically this can happen if the binary was created by a developer with one of these specific words in their company’s name. One example of this is programs created by a vendor named “InstallShield”.
To fix this, you need to apply the SpecificNonInstall Shim or the vendor needs to change the data in the program.