ckm
4th September 2006 06:53 UTC
How to embed a manifest file into a setup
Hi,
I have a installer that is built using NullSoft without any marking. Now to support the isntaller Vista i need to mark the installer. The reason i am trying to do this is because i am getting a credential prompt when i login as a Restricted user (Even though my setup doesn't really require any admin changes). Reading through UAC site i noticed that the setup shoud be emarked with requestedExecutionLevel to highestAvailable.
I read another post on using Mt.exe but "C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin\Mt.exe" -manifest setup.exe.manifest -outputresource:setup.exe.cab;#1, the size of the cab file reduces and when i try to execute i get corrupted installer.
Can somebody help me on how to properly embed a manifest file into the isntaller.
Thanks and Regards
-C
onad
5th September 2006 11:58 UTC
There are TWO different things involved:
1)
Your have to authenticode sign the application
(NOTE: You need buy a certificate for this, see http://www.thawte.com/ssl-digital-ce...ing/index.html )
2)
Add to the installer the minimum rights in a manifest.
http://forums.winamp.com/showthread....hreadid=250937
Yes it is Vista, things changed ;) good luck, since you need that with this one...
ckm
14th September 2006 07:18 UTC
For testing i am using Basic.nsi script sample. After building the file i get Basic.exe the file size is 62161KB. After this i execute the command
mt.exe -manifest uninst.exe.manifest -outputresource:Basic.exe;#1
I can open the exe in VS and see that manifest is updated but the file size is now 49664 and Basic.exe won't work anymore. Is there anything wrong with command?
Thanks for your help
-C
kichik
15th September 2006 11:51 UTC
Don't execute the command after the installer is built. Use !packhdr to execute it while it's built. If you don't do this, you'll get CRC errors, which is what I have to assume you have.
ckm
15th September 2006 12:21 UTC
Thanks Kichik i was looking at perl plugin example how they do it and still in the process of doing this. I will let you know how my testing goes.