5
因此,我有一个更新某些XML的函数,并且我想将在[Setup]
脚本的[Setup]
部分中设置的{AppVersion}
作为常量传递给此功能使用{AppVersion}作为Inno Setup中的函数的参数
我已经试过
MyFunction(ExpandConstants({AppVersion})
但是这给了我一个错误?我怎么这个常量传递给我的正常工作
我的代码
[Files]
Source: ".\Source\myfile.txt"; DestDir: "{app}\System"; AfterInstall: MyFunction('{#SetupSetting("AppVersion")}')
[Setup]
AppId=MyApp
AppName=My Application
AppVersion=011
DefaultDirName=C:\MyApp
[Code]
procedure MyFunction(Text: String);
begin
MsgBox(Text, mbInformation, MB_OK);
end;
嗨@TLama,再次感谢您的帮助。我认为你在正确的轨道上。查看我对该问题的更新,了解我如何使用它的一些示例代码。目前我的代码显示一个空白的MessageBox,而不是一个版本号。我究竟做错了什么? – user1 2014-11-06 12:25:06
在'[Setup]'部分之后移动你的'[Files]'部分。预处理器从上到下工作,它不知道“AppVersion”指令。一个使用预处理器的提示;如果在脚本的最后(只有参数是预处理脚本应存储的路径)写入#expr SaveToFile(“C:\ PreprocessedScript.iss”)行,则可以保存完全预处理的脚本。 – TLama 2014-11-06 12:32:49
NeverMind我从[这里](http://stackoverflow.com/a/1926709/2987066)意识到我的错误,'[Setup]'部分必须位于'{#SetupSetting(“AppVersion”)}之前'iis文件中的行 – user1 2014-11-06 12:32:52