Discussion:
Use of mt.exe tool
(too old to reply)
Jeff McKay
2007-03-19 18:37:50 UTC
Permalink
The Windows Vista certification program requires that .exe files have an
embedded manifest that sets the execution level, as follows:

<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>

My development environment (C++ Builder) does not seem to allow me to create
an embedded manifest, so I am trying to use the tool mt.exe. I am confused
by what
else needs to be in the manifest file to make this work. The documentation
for mt.exe
says that the file referenced by the manifest (I presume they mean the exe
file) must
be in the same directory. So what other stuff do I need in the manifest? I
tried looking
at the manifests for Outlook 2007 and Word 2007 (using Resource Hacker), but
I don't see how I specify the name of the .exe file (it is not on the
command line to mt.exe). By the way, the manifests for Microsoft's program
don't seem to follow their own requirements
for 3rd party certification.
Jeff McKay
2007-03-20 00:31:03 UTC
Permalink
Further to this question, I was told to create a resource file containing
the
required manifest, then compile that into the exe. I did so, but when I try
to
run the resulting exe, I get the error "The application has failed to start
because
its side-by-side configuration is incorrect." My manifest is as follows:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
chasgl
2007-06-06 22:13:00 UTC
Permalink
wHEN THAT happened to me it was because I had put debug code on a machine
without Visual Studio installed.
Post by Jeff McKay
Further to this question, I was told to create a resource file containing
the
required manifest, then compile that into the exe. I did so, but when I try
to
run the resulting exe, I get the error "The application has failed to start
because
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
Loading...