我想知道如何使用innosetup添加额外的setup exe并使用我的主exe执行额外的exe。
请帮助我,因为我在过去的3天里尝试这个,因为我是使用innosetup的新手。
谢谢。
答案 0 :(得分:8)
最简单的方法是在[运行]部分中为您调用额外的EXE。应将所有EXE文件添加到[Files]部分的主设置中。您可以将它们复制到TEMP文件夹中以进行安装,也可以将它们复制到您的应用程序文件夹(如果需要)。
[Files]
Source: "d:\ADDS\*"; DestDir: "{tmp}";
Flags: nocompression createallsubdirs recursesubdirs deleteafterinstall
//contains DirectX in directx folder, VC Redist 2010 x86 and VC Redist 2010 x64
[Run]
Filename: "{tmp}\directx\DXSETUP.exe"; Parameters: "/silent";
Flags: waituntilterminated skipifdoesntexist;
StatusMsg: "Microsoft DirectX installation. Please wait..."
Filename: "{tmp}\vcredist_x86_2010.exe"; Parameters: "/Q";
Flags: waituntilterminated skipifdoesntexist;
StatusMsg: "Microsoft Visual C++ 2010 (x86) installation. Please Wait..."
Filename: "{tmp}\vcredist_x64_2010.exe"; Parameters: "/Q";
Flags: waituntilterminated skipifdoesntexist;
StatusMsg: "Microsoft Visual C++ 2010 (x64) installation. Please wait..."; Check: IsWin64
答案 1 :(得分:3)
Inno没有“主要exe”的概念。如果要包含两个可执行文件,则只需创建多个[Files]
条目。
安装完成后,您就可以拥有多个[Run]
条目。
[Files]
;Console
Source: ..\Console.exe; DestDir: {app}; Flags: ignoreversion
#ifdef debug
Source: ..\Console.map; DestDir: {app}
Source: ..\Console.pdb; DestDir: {app}
#endif
Source: ..\Console.chm; DestDir: {app}
;Node
Source: ..\Node.exe; DestDir: {app}; Flags: ignoreversion
#ifdef debug
Source: ..\Node.map; DestDir: {app}
Source: ..\Node.pdb; DestDir: {app}
#endif