Cannot add external manifest for executable after it was running once

i will stat by complaining and than continue, i wasted today more than 1 hour while trying to add external manifest for a VB6 application that needed to require elevation, it simply didn't work.

The flows was as such, i connected to a system to investigate why the application is not working correctly on Windows 2008 R2 with UAC on. i have identified that the issues related to that process is running under the standard token and not admin.

I created external manifest file and nothing helped it simply didn't ask for elevation so i did million of things:

  • change version
  • changed names of the process (couple of times) in XML
  • Change version of schema in XML

After 1 hour and few emails, i decided to lay back, drink and rethink,…. + search more on Google and suddenly i found few places that describe the internal behavior of windows – actually windows caches the application context (manifest) on the first time , so in my case i ran the application that didn't have external manifest and it was cached as none , than i added manifest but it was already cached and that was the reason NOTHING CHANGED!!!

so the solution is simple(one of the following):

  1. Embed the manifest in executable
  2. Touch the executable after adding manifest (only if you ran it)

This post should save you LOTS of time <Smile />

Cannot add external manifest for executable after it was running once Cannot add external manifest for executable after it was running once Reviewed by Ran Davidovitz on 1:43 PM Rating: 5

1 comment:

WindowsPistha said...

Thanks a lot! It saved my time.I was wondering why it is not taking my external manifest file.

After seeing your comments, renamed the exe and manifest to different name and Executed.It worked beautifully.

Thanks for your valuable tip!

Powered by Blogger.