我们有一个开放源码软件项目,我试图升级到Inno安装6.0.5。当我在本地编译构建脚本时,它会像预期的那样工作。但是,当我试图通过AppVeyor构建它时,它找不到文件。我都试过了:
这些文件存在于预期位置,是有效的位图。但是,在AppVeyor上我们得到了以下错误:
Creating output directory: C:\projects\rubberduck\Rubberduck.Deployment\InnoSetup\Installers
Reading file (LicenseFile)
Reading file (WizardImageFile)
File: C:\projects\rubberduck\Rubberduck.Deployment\InnoSetup\Graphics\WizardImageFiles\Rubberduck.Duck.*.bmp
Error on line 81 in C:\projects\rubberduck\Rubberduck.Deployment\InnoSetup\Rubberduck.Installer.Build.iss: Could not read "C:\projects\rubberduck\Rubberduck.Deployment\InnoSetup\Graphics\WizardImageFiles\Rubberduck.Duck.*.bmp".
Error: The filename, directory name, or volume label syntax is incorrect.
Compile aborted.我们使用巧克力安装Inno安装。我们发现必须显式指定版本;否则,它将使用5.5.9而不是6.0.5:
原件:
- cinst innosetup -version 5.6.1修改:
- cinst innosetup --version=6.0.5完整的AppVeyor控制台输出(包括几条实用化消息)可以看到这里。
完整的ISS构建脚本可以看到这里。
完整的应用程序可以看到这里。
为什么它会在当地起作用,但在承销商身上却失败了?
发布于 2020-10-05 07:43:55
尽管您声明不是这样,但是您仍然使用5.5.9:
编译器引擎版本: Inno安装程序5.5.9 (u)
支持Wizard*ImageFile指令中的通配符,因为只支持Inno安装5.6。
尽管您的脚本似乎安装了6.0.5。由于它是一个不同的主要版本,所以它处于不同的路径,C:\Program Files (x86)\Inno Setup 6\而不是C:\Program Files (x86)\Inno Setup 5\。AppVeyor附带5.5.9预装,这可能是为什么,当运行构建脚本的时候,5.5.9会被执行。尝试使用iscc的完整路径以确保您正在运行Inno安装程序的正确主版本。
https://stackoverflow.com/questions/64187124
复制相似问题