我尝试以下面的方式使用宏/变量,但后来我得到一个错误.你能建议吗?
#define AnnotateDir "C:\Users\new_skin\Annotate\project"
#define AnnotateUserInstallAppData "{userappdata}\Annotate3"
[Files]
Source: {AnnotateDir}\bin\gm_annotate.exe; DestDir: {app}; Flags: ignoreversion external
Run Code Online (Sandbox Code Playgroud)

您在脚本预处理阶段#使用的变量名之前缺少char emit defined variable value.您可以这样修复脚本:
#define AnnotateDir "C:\Users\new_skin\Annotate\project"
[Files]
Source: {#AnnotateDir}\bin\gm_annotate.exe; DestDir: {app}; Flags: ignoreversion external
Run Code Online (Sandbox Code Playgroud)
它看起来很有误导性,但是例如{app}常量将在预处理后保留,而您定义的变量将被其值替换,这就是为什么它们在脚本中有不同的表示法.