2012-04-29 117 views
2

我想知道如何控制inno安装程序的语言,我希望当用户在安装后选择英文inno安装程序时删除意大利语言文件,但如果用户选择意大利语言,我希望在安装后删除语言文件英文。我试过这个代码,但不起作用:Inno安装程序如果和语言

[InstallDelete] 
#if {language} = "english" 
Type: files; Name: "{commondesktop}\english.txt" 
#if {language} = "italian" 
Type: files; Name: "{commondesktop}\italian.txt" 
#endif 

谢谢。

对不起,我的英语。

回答

4

指令在编译时进行评估,并且无论如何在安装开始时处理[InstallDelete]部分。对于你的情况,最简单的方法,我相信,如果用户没有选择相应的设定语言不安装文件中的第一个地方:

[Languages] 
Name: "en"; MessagesFile: "compiler:Default.isl" 
Name: "it"; MessagesFile: "compiler:Languages\Italian.isl" 

[Files] 
Source: "english.txt"; DestDir: "{commondesktop}"; Languages: en; 
Source: "italian.txt"; DestDir: "{commondesktop}"; Languages: it; 

如果我莫名其妙地误解了这个问题,你可以使用DeleteFile支持删除文件的代码功能,例如在CurStepChanged程序中,CurStep是'ssDone'或'ssPostInstall'。

+0

但删除文件? – user1363585 2012-04-29 10:31:06

+0

如果你没有安装它,你不需要删除该文件,不是? – 2012-04-29 10:44:12

+0

谢谢,工作! – user1363585 2012-04-29 11:39:41

相关问题