Windows Vista UAC - EXE ~Name~ Trigger Warnings??? RRS feed

  • Question

  • Greetings,

     I have noticed that the actual “name” of the program seems to trigger a warning from Vista  about  unknown program wanting access to your PC.  No matter how many times you answer to give the program access, Vista will ask you every time you run that program.

    We have a software updating service that we us to push updates our to our clients.  We have noticed when testing with Vista that if we rename our updating executable to something else we no longer get a question about permission to run from Vista.

    Vista is obviously keying on the executable name?  to see what I mean try renaming a executable that normally runs with-out warning to “Patch.exe”..

    Can anyone confirm that this is actually the case, and Vista has a black list of names  somewhere in its depth…



    Tuesday, February 20, 2007 8:21 PM

All replies

  • Installer Detection.  The system is guessing (possibly incorrectly) that this file is an installer of some sort and that it probably need to run with elevated privileges in order to work.  The UAC dialogue, asking for consent or credentials, is likely the result you are seeing.

    If you can add a manifest to the affected executable declaring a requestedExecutionLevel of 'asInvoker' it should stop prompting.  Even if the prompting is correct in this case, you should consider adding a manifest declaring a requestedExecutionLevel of 'requireAdministrator' or whatever is appropriate.

    Wednesday, February 21, 2007 9:45 PM
  • Vista seems to detect patch.exe as an installer and flags it to run as administrator. You can use an embedded manifest (as described above) to stop the prompt. I attempted to use a side by side manifest using this method but it didn't work.


    This applies to other executables that have the words: "setup", "install", "update", "patch", etc. in their name; or keywords in the "following Versioning Resource fields: Vendor, Company Name, Product Name, File Description, Original Filename, Internal Name, and Export Name"; etc.

    This page has more details http://technet.microsoft.com/en-us/library/cc709628.aspx

    Wednesday, October 15, 2008 2:08 AM
  • Side by side manifest in my experience will work for this purpose, provided:
    a) the non-presence of a side by side manifest has not been cached.  If it has been, you can force the cache to refresh by updating the timestamp on the exe (rename it a couple of times, etc.)
    b) an embedded manifest is not present.  Vista prefers embedded to side-by-side.

    I would strongly advise against trying to remove keywords from your app as a way of avoiding detection, since there is no guarantee the matching rules are going to remain the same forever.  A manifest with a requestedExecutionLevel is the best and most reliable way.
    Wednesday, October 15, 2008 7:47 AM