This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Embedding Manifest problem for Vista's UAC (mt.exe)
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 08, 2008
03:59 PM
Embedding Manifest problem for Vista's UAC (mt.exe)
Hi,
I am using mt.exe to embed the manifest file "setup.exe.manifest" to "setup.exe" (size approx. 5MB). After embedding the manifest, the new setup.exe size shrinks to approx 400KB.
setup.exe was created InstallShield 2009, and all files are compressed inside this file. Project type is a standard MSI project. I am using the command line:
mt.exe -manifest "setup.exe.manifest" -outputresource:"setup.exe";#1
I tried using two different versions of mt; one included with Platform SDK, and other with Visual Studio 2005.
I need someone to tell me how to get proper results using this tool?? Thanks
I am using mt.exe to embed the manifest file "setup.exe.manifest" to "setup.exe" (size approx. 5MB). After embedding the manifest, the new setup.exe size shrinks to approx 400KB.
setup.exe was created InstallShield 2009, and all files are compressed inside this file. Project type is a standard MSI project. I am using the command line:
mt.exe -manifest "setup.exe.manifest" -outputresource:"setup.exe";#1
I tried using two different versions of mt; one included with Platform SDK, and other with Visual Studio 2005.
I need someone to tell me how to get proper results using this tool?? Thanks
(8) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
03:39 AM
try this:
mt.exe -manifest "setup.exe.manifest" -outputresource:"setup.exe;#1"
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
03:41 AM
Why do you use mt.exe to embed a manifest into Setup.exe? Do you need additional stuff inside the manifest?
Setup.exe created by InstallShield since IS 2008 includes embedded manifest info to be more Vista compatible (requestedExecutionLevel).
Setup.exe created by InstallShield since IS 2008 includes embedded manifest info to be more Vista compatible (requestedExecutionLevel).
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
10:49 AM
Assuming you are talking about a compressed single-exe build, there is data attached to the exe which is not represented in ways mt understands. Thus when it modifies the file, it may truncate it as you've seen. Ideally you could set this before build, either choosing the correct execution level on your release or, if you need additional information, adding it to the files in the Support folder of the InstallShield install (SetupExe.*.manifest). If that's not sufficient, you could try the IsReMan tool, available from KB article Q113245.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
12:18 PM
nope, your approach also truncates the file..
thepeter wrote:
try this:mt.exe -manifest "setup.exe.manifest" -outputresource:"setup.exe;#1"
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
12:49 PM
MichaelU wrote:
Assuming you are talking about a compressed single-exe build, there is data attached to the exe which is not represented in ways mt understands. Thus when it modifies the file, it may truncate it as you've seen. Ideally you could set this before build, either choosing the correct execution level on your release or, if you need additional information, adding it to the files in the Support folder of the InstallShield install (SetupExe.*.manifest). If that's not sufficient, you could try the IsReMan tool, available from KB article Q113245.
Thanks, your approach works however I am getting a runtime error; this is probably because the setup.exe from the link you provided is for IS 12, and I am using version 2009. Do you perhaps have the links to the latert version of IS for the "setup.exe"?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
01:21 PM
MichaelU, the correct execution level is already specified in:
Installation Information -> General Information -> Summary Information Stream -> Require Administrative Privileges -> Yes
But Vista ignores this (did you have this setting in mind?).
The manifest *is* embedded by "reman" tool and Vista shows the "shield" (admin) icon. When I try running the new setup.exe I get Microsoft Visual C++ Runtime Error - abnormal program termination. I am embedding the file:
C:\program Files\InstallShield\2009\support\SetupExe.Admin.manifest
Installation Information -> General Information -> Summary Information Stream -> Require Administrative Privileges -> Yes
But Vista ignores this (did you have this setting in mind?).
The manifest *is* embedded by "reman" tool and Vista shows the "shield" (admin) icon. When I try running the new setup.exe I get Microsoft Visual C++ Runtime Error - abnormal program termination. I am embedding the file:
C:\program Files\InstallShield\2009\support\SetupExe.Admin.manifest
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
02:00 PM
I had a different setting in mind. The one you reference tells MSI whether to prompt for UAC (if necessary) when starting the execute sequence. We have another option on the releases view (Media > Releases > your release node > Setup.exe tab > Required Execution Level) which specifies the manifest setting to use. It is set to Invoker by default for Basic MSI projects, as that is what Microsoft recommends.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 09, 2008
04:21 PM
I wasn't even aware this option existed. This has solved my problem. Thank you!