我的Inno设置文件的[Dirs]部分中有一些声明。我使用“ Inno Setup Compiler”和普通的文本编辑器(Notepad ++)进行开发。在选择安装目录之前取消设置时,{app}变量肯定为空。我收到此错误(完全是逻辑错误):
如何解决在按下“取消”按钮并确认要取消设置后没有错误发生的问题?
内部错误:初始化“ app”常量之前,尝试对其进行扩展。
是否可以全局设置{app}变量或为其提供默认值?
这是一个使用变量{app}的代码片段:
[Dirs]
Name: {app}; Permissions: everyone-readexec
Name: {app}\bin; Permissions: everyone-readexec
[Run]
Filename: "{app}\run.exe; Flags: runhidden
[INI]
Filename: {app}\bin\myIni.ini; Section: Settings;
[InstallDelete]
Name: {app}\*; Type: filesandordirs; Tasks:
Run Code Online (Sandbox Code Playgroud)
感谢您的帮助,问候C。
您可以跳过代码,该代码{app}会在初始化常量之前尝试对其进行扩展;或者,作为一种解决方法,您可以使用WizardDirValue,它实际上{app}会在扩展时将值返回给。甚至参考提到(我强调):
返回向导的“选择目标位置”页面上编辑控件的当前内容。
与ExpandConstant('{app}')不同,如果在显示向导之后但在用户选择目录之前调用此函数,则该函数不会失败。相反,它将返回默认目录名称。
在最新的源代码中,您可以看到如何在{app}上扩展常量this line。
| 归档时间: |
|
| 查看次数: |
4339 次 |
| 最近记录: |