"Gary Chang[MSFT]" said:
Thanks for understanding, George.
I apologize for any inconvenience this may cause you, we will forward
your
feedback to our corresponding product team for review.
I want to confirm what George is seeing. If I include the manifest he
posted
in a .manifest file and let the manifest tool generate the resource, it
causes a BSoD on XP systems. Sometimes, I have to run the app two or three
times before it crashes, and sometimes the crash takes a few seconds to
kick
in, but it's consistent.
Before I found this thread, I had narrowed it down to the <security> tag.
It
seemed that, no matter what I included in <security>, if it was present,
the
app would crash. However, the security section is necessary for UI
automation
applications in Windows Vista
(
http://windowssdk.msdn.microsoft.co...html/1d853695-973c-48ae-b382-4132ae702805.asp),
so removing it is not an option.
As a side note, the IDE doesn't understand the requestedPrivileges and
requestedExecutionLevel tags. It generates a warning if they are present
in
the .manifest file.
I did enter a bug against this in the MSDN product feedback center at
http://lab.msdn.microsoft.com/ProductFeedback/viewFeedback.aspx?FeedbackID=FDBK48918
if anybody wants to validate/vote on it.
To workaround this, you can either edit the resource directly after
building, or do what I did:
1) Manually add a resource to the project of type RT_MANIFEST and ID of 1.
2) Paste the contents of the .manifest file into the resource.
3) Go to the project properties, go to the manifest tool's input/output
section, and turn off the option to embed the manifest.
Then, when you build, the resource will be properly formed, won't crash
XP,
and will allow UI automation in Vista (as long as you sign it), without
having to remember to manually edit the resources after building.