Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't sign (un)installer with Inno Setup [duplicate]

I have Inno Setup with Inno Script Studio installed, along with Visual Studio 2013. I have a digital certificate, protected with a password, named certificate.p12. I also have the Windows 8.1 driver SDK installed (although I'm running Windows 7 Professional x64). The compiled output I'm including in my installer is already signed.

I configured Inno Script Studio with a sign tool named my_signtool and with this command:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" sign /f "z:\full\path\to\certificate.p12" /p "password" $f

...and in my .iss file, I have:

SignTool=my_signtool

With this setup on my computer, it works perfectly. I compile the project and Inno Setup automatically signs the installer and its uninstaller.

But, I have a colleague with what should be the exact same setup. He has Visual Studio 2013, Inno Setup and Inno Script Studio, a copy of the certificate, and its password. When he tries to compile it, Inno Setup fails by saying attempting to run the signtool against uninst.e32.tmp returns 0x1. When he runs the exact command it tries to run manually in the command prompt, it fails by stating uninst.e32.tmp isn't available, but that seems normal because I suspect Inno Setup is just cleaning up after itself after the error (or is it?).

I've tried replacing the quotes with $q in the definition of the sign tool to no avail. In fact, aside from the path to signtool.exe itself, none of the paths involved have spaces in them anyway.

Both our outputs look like this initially. Immediately after this is where they diverge: mine continues to run, and his complains that the sign tool failed with 0x1.

Starting compile.  [Monday, January 12 2015 at 10:11:03 AM]
Compiling script with Inno Setup 5.5.5 (a) [ISDLLCompileScriptA]

[PreCompile] Processing.
[PreCompile] Processing is still being tested.
[PreCompile] Processing finished.

[ISPP] Preprocessing.
[ISPP] Preprocessed.

Parsing [Setup] section, line 14
...
Parsing [Setup] section, line 41
Reading file (WizardImageFile)
   File: C:\Program Files (x86)\Inno Setup 5\WIZMODERNIMAGE.BMP
Reading file (WizardSmallImageFile)
   File: C:\Program Files (x86)\Inno Setup 5\WIZMODERNSMALLIMAGE.BMP
Preparing Setup program executable
   Updating icons (SETUP.E32)
   Running Sign Tool command: "C:\Program Files (x86)\Windows Kits\8.1\bin\x64\signtool.exe" sign /f "z:\full\path\to\certificate.p12" /p "password" "Z:\full\path\to\uninst.e32.tmp"

Any guess what simple detail I'm overlooking where my environment works fine every time, but his fails even though it's configured the same way?

like image 758
user3466413 Avatar asked Jan 14 '15 18:01

user3466413


1 Answers

I had this same issue and just needed to run Inno Script Studio as Administrator and then I had no problem.

like image 133
TeamEASI.com Avatar answered Sep 23 '22 03:09

TeamEASI.com