1、安装包,如果重新安装,还是要显示每步的窗口,但是取值是原来的参数。 否则在简体改繁体,或者改路径重新安装一份等,都不能二次决定。会直接替换原来的目录。 解决办法: 每次安装的显示目录选择,安装后将该目录写到注册表,安装时再读取出来,由用户决定是否改变目录,或者再安装一份新的,装两个一样的系统。 单机/网络 收银/客户端/服务器 的选择也要存储到注册表。 2、安装的文件代码类的直接替换,参数类的和报表类的,存在就要跳过。不要替换。 代码如下,报表,R文件夹是导入类的。不要替换。 Source: .\all\*.*; DestDir: {code:GetDefaultInstallRoot}\; Flags: recursesubdirs createallsubdirs overwritereadonly ignoreversion; Check: GETTA2 or GETTA3 Source: FS\*.exe; DestDir: {code:GetDefaultInstallRoot}\; Flags: recursesubdirs createallsubdirs overwritereadonly ignoreversion; Check: GETTA2 or GETTA3 Source: FS\*.bpl; DestDir: {code:GetDefaultInstallRoot}\; Flags: recursesubdirs createallsubdirs overwritereadonly ignoreversion; Check: GETTA2 or GETTA3 Source: FS\XML\*.*; DestDir: {code:GetDefaultInstallRoot}\XML\; Flags: recursesubdirs createallsubdirs overwritereadonly ignoreversion; Check: GETTA2 or GETTA3 Source: FS\R\*.*; DestDir: {code:GetDefaultInstallRoot}\R\; Flags: recursesubdirs createallsubdirs overwritereadonly onlyifdoesntexist; Check: GETTA2 or GETTA3 Source: FS\RepDef\*.*; DestDir: {code:GetDefaultInstallRoot}\RepDef\; Flags: recursesubdirs createallsubdirs overwritereadonly onlyifdoesntexist; Check: GETTA2 or GETTA3 |