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):
- Embed the manifest in executable
- Touch the executable after adding manifest (only if you ran it)
This post should save you LOTS of time <Smile />