11
votes

I am signing my installer with a digital certificate. When using Inno Script Studio, I have correctly defined my sign tool with a path to the MS signing tool, certificate password etc. And I simply reference it with

SignTool=signtool

And this works fine.

But when I try and compile my script via the command line using:

C:\Program Files (x86)\Inno Setup 5>iscc "C:\Users\username\Documents\MyInstaller.iss"

I get an error:

Value of [Setup] section directive "SignTool" is invalid.

When I read the documentation, it states:

any Sign Tools configured using the IDE will be specified automatically

So my understanding is that I shouldn't have to use the /S parameter? What is the correct way to sign a setup file when building from the command line?

1

1 Answers

9
votes

Inno Script Studio uses a different set of "sign tools" than Inno Setup.

Inno Script Studio stores the "sign tools" to:

HKEY_CURRENT_USER\SOFTWARE\Kymoto Solutions\Inno Script Studio 2\SignTools

While Inno Setup stores them to:

HKEY_CURRENT_USER\SOFTWARE\Jordan Russell\Inno Setup\SignTools

So, the Inno Setup command-line compiler iscc.exe is not aware of your Inno Script Studio sign tools.

You can probably simply export the SignTools from Inno Script Studio 2 and import them to the Inno Setup registry, as the syntax seems identical.