#inno-setup #signtool
#inno-настройка #инструмент подписи #inno-setup #signtool
Вопрос:
Я получаю странную ошибку при подписании моего программного обеспечения. Я использую inno setup 4.5.2.
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" "outuninst.e32.tmp"
SignTool Error: An unexpected internal error has occurred.
Error information: "Error: Store IsDiskFile() failed." (-2147024893/0x80070003)
Error in W:pathinstaller.iss: Sign Tool failed with exit code 0x1.
Compile aborted.
Командная строка выглядит довольно нормально, она даже работает вне компиляции inno setup. При настройке SignedUninstaller=no
get me further он по-прежнему выдает эту ошибку при попытке подписать выходной установочный файл.
Теперь я почти везде искал этот код ошибки (0x80070003) и / или сообщение «Ошибка сохранения IsDiskFile ()». Я также пробовал использовать несколько версий signtool.
Ответ №1:
Я разобрался с проблемой, путь к сертификату должен быть относительно выходного пути установщика, а не текущей рабочей папки. В этом случае это будет «.. cert.pfx».
Комментарии:
1. Это сообщение указывает на то, что файл сертификата не может быть найден. В моем случае он просто отсутствовал (не проверялся локально). 1
2. Ну, в моем случае неверным был путь к файлу, который нужно подписать . В любом случае, это сообщение указало мне правильное направление, но да, сообщение об ошибке могло быть лучше!
3. В моем случае мне нужно было изменить путь к сертификату с относительного на абсолютный (в рабочей области моего сервера сборки ci).
Ответ №2:
У меня была та же проблема. Моя проблема заключалась в том, что я использовал "
в signTool
команде, в то время как мне нужно было использовать $q
вместо этого. На удивление, он успешно подписал исполняемый файл, но не смог подписать результат setup.exe досье.
Ответ №3:
В моем случае у меня был неправильный путь к файлу сертификата. Сообщение типа «pfx не найден» было бы намного лучше, чем просто «Сбой IsDiskFile ()»…..
Ответ №4:
Моя проблема заключалась в наличии файла .pfx на сетевом диске (G:). Перемещение его на локальный диск (C:) решило проблему.