将同一文件安装到Inno Setup

问题描述 投票:0回答:1
提前三

dontcopy

flag

键入文件,然后在

installation inno-setup pascalscript
1个回答
1
投票

(或ssPostInstall

)中以编程方式安装它。
使用
ExtractTemporaryFile
将文件提取到临时文件夹。
使用

FindFirst[Files] #define FolderEntry(Name) \ "Source: ""C:\source\*""; DestDir: ""{app}\" + Name + """; " + \ "Check: CheckDir('" + Name + "')" #emit FolderEntry('2023') #emit FolderEntry('2024') #emit FolderEntry('2025')

如果您addd

[Code] function CheckDir(DirName: string): Boolean; begin Result := DirExists(ExpandConstant('{app}') + '\' + DirName); end;
到脚本的末尾:

SaveToFile

...然后您应该在
#expr SaveToFile(AddBackslash(SourcePath) + "Preprocessed.iss") 中看到代码生成这样的脚本:

Preprocessed.iss
    
感谢马丁!我做了另一种可能对其他用户有帮助的方式。
我为要检测到的每个潜在文件夹设置一个文件(仅适用于四个)。

[Files] Source: "C:\source\*"; DestDir: "{app}\2023"; Check: CheckDir('2023') Source: "C:\source\*"; DestDir: "{app}\2024"; Check: CheckDir('2024') Source: "C:\source\*"; DestDir: "{app}\2025"; Check: CheckDir('2025')

然后我使用以下内容检查文件夹是否存在:
[Files] Source: "C:\Users\XXXXX\dll\*"; DestDir: "{commonappdata}\XXXX\2023"; Check:CheckDir2023;

	

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.