2011-10-04 7 views
22

Ricevo uno strano errore mentre firma il mio software. Sto usando inno setup 4.5.2.signtool fallire con inno setup: 0x80070003 - "Store IsDiskFile() non riuscito"

Running Sign Tool command: signtool.exe sign /a /f cert.pfx /v /t "http://timestamp.verisign.com/scripts/timstamp.dll" /p pwd /d "Setup Label" "out\uninst.e32.tmp" 
SignTool Error: An unexpected internal error has occurred. 
Error information: "Error: Store IsDiskFile() failed." (-2147024893/0x80070003) 
Error in W:\path\installer.iss: Sign Tool failed with exit code 0x1. 
Compile aborted. 

La riga di comando sembra ok, funziona anche al di fuori della compilazione di installazione inno. Durante l'impostazione di SignedUninstaller=no mi spinge ancora oltre, questo errore si verifica ancora durante il tentativo di firmare il file di installazione di output.

Ora ho cercato praticamente ovunque quel codice di errore (0x80070003) e/o il messaggio "Store IsDiskFile() non riuscito". Ho anche provato con la versione multipla di signtool.

risposta

36

ho capito il problema, il percorso del certificato deve essere relativo al percorso di output del programma di installazione, non alla cartella di lavoro corrente. In questo caso, sarebbe ".. \ cert.pfx"

+9

Questo messaggio indica che il file del certificato non è stato trovato. Nel mio caso, mancava semplicemente (non verificato localmente). +1 – ashes999

+1

Anch'io. Non è un messaggio di errore molto utile! – mikeyq6

2

Ho avuto lo stesso problema. Il mio problema era che ho usato " nel comando signTool, mentre invece dovevo usare $q. Sorprendentemente è stato firmato con successo l'eseguibile ma non è riuscito a firmare il file setup setup.