2011-10-04 5 views
22

Dostaję dziwny błąd podczas podpisywania mojego oprogramowania. Używam instalacji inno 4.5.2.signtool kończy się niepowodzeniem z inno setup: 0x80070003 - "Store IsDiskFile() failed"

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. 

Wiersz poleceń wygląda całkiem dobrze, działa nawet poza kompilacją instalacji inno. Ustawienie wartości SignedUninstaller=no powoduje, że błąd ten jest nadal wyświetlany podczas próby podpisania pliku konfiguracji wyjściowej.

Teraz wyglądam prawie wszędzie na ten kod błędu (0x80070003) i/lub komunikat "Store IsDiskFile() nie powiodło się". Próbowałem również z wieloma wersjami signtool.

Odpowiedz

36

Wyjaśniałem problem, ścieżka do certyfikatu musi być względna względem ścieżki wyjściowej instalatora, a nie do bieżącego folderu roboczego. W tym przypadku byłby to ".. \ cert.pfx"

+9

Ten komunikat oznacza, że ​​nie można znaleźć pliku certyfikatu. W moim przypadku było to po prostu nieobecne (nie sprawdzone lokalnie). +1 – ashes999

+1

Ja też. Niezbyt przydatny komunikat o błędzie! – mikeyq6

2

Miałem ten sam problem. Mój problem polegał na tym, że użyłem polecenia " w komendzie signTool, a zamiast tego potrzebowałem użyć $q. Zaskakująco pomyślnie podpisano plik wykonywalny, ale nie udało się podpisać pliku setup.exe.

Powiązane problemy