InnoSetup 打包代码 检测.netFramework

不带.netFramework

View Code
复制代码
 1 ; 脚本用 Inno Setup 脚本向导 生成。
 2 ; 查阅文档获取创建 INNO SETUP 脚本文件详细资料!
 3 
 4 [Setup]
 5 ; 注意: AppId 的值是唯一识别这个程序的标志。
 6 ; 不要在其他程序中使用相同的 AppId 值。
 7 ; (在编译器中点击菜单“工具 -> 产生 GUID”可以产生一个新的 GUID)
 8 AppId={{E47F55B6-5604-4430-A9BE-AE7ADAB5D08C}
 9 AppName=xxxxxxxxxxxxxxxx V1.1.8.8
10 AppVerName=xxxxxxxxxxxxxxxx V1.1.8.8
11 AppPublisher=xxxxxxxxxxxxxxxx
12 AppPublisherURL=http://www.sdzn.com/
13 AppSupportURL=http://www.sdzn.com/
14 AppUpdatesURL=http://www.sdzn.com/
15 DefaultDirName={pf}\LessonTool
16 DefaultGroupName=xxxxxxxxxxxxxxxx
17 OutputDir=C:\Documents and Settings\Administrator\桌面\备课工具_201200614\
18 OutputBaseFilename=xxxxxxxxxxxxxxxx_20120627_1645_不带dotFramework
19 Compression=lzma
20 SolidCompression=no
21 
22 [Languages]
23 Name: default; MessagesFile: compiler:Default.isl
24 
25 [Files]
26 Source: C:\Documents and Settings\Administrator\桌面\MMMMMM_201200614\package\Debug\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
27 ; 注意: 不要在任何共享的系统文件使用 "Flags: ignoreversion"
28 Source: C:\Documents and Settings\Administrator\桌面\MMMMMM_201200614\package\dsoFramer\*; DestDir: {win}; Languages: 
29 Source: ..\..\..\..\Documents and Settings\Administrator\桌面\MMMMMM_201200614\package\Desktop4Bing\*; DestDir: {tmp}
30 
31 [Icons]
32 Name: {group}\{cm:UninstallProgram,xxxxxxxxxxxxxxxx}; Filename: {uninstallexe}
33 Name: {group}\xxxxxxxxxxxxxxxx; Filename: {app}\LessonTool.exe
34 Name: {commondesktop}\xxxxxxxxxxxxxxxx; Filename: {app}\LessonTool.exe
35 
36 [Run]
37 Filename: {win}\dsoFramer2.bat; WorkingDir: {tmp}; Flags: nowait runminimized
38 Filename: {tmp}\hong.exe; WorkingDir: {tmp}\
39 
40 [Messages]
41 WelcomeLabel1=xxxxxxxxxxxxxxxx V1.1.8.8
42 WelcomeLabel2=xxxxxxxxxxxxxxxx V1.1.8.8
复制代码

覆盖.netFramework

View Code
复制代码
 1 ; 脚本用 Inno Setup 脚本向导 生成。
 2 ; 查阅文档获取创建 INNO SETUP 脚本文件详细资料!
 3 
 4 [Setup]
 5 ; 注意: AppId 的值是唯一识别这个程序的标志。
 6 ; 不要在其他程序中使用相同的 AppId 值。
 7 ; (在编译器中点击菜单“工具 -> 产生 GUID”可以产生一个新的 GUID)
 8 AppId={{E47F55B6-5604-4430-A9BE-AE7ADAB5D08C}
 9 AppName=XXXXXXXXXXXXXXXX V1.1.8.8
10 AppVerName=XXXXXXXXXXXXXXXX V1.1.8.8
11 AppPublisher=XXXXXXXXXXMMMMMMMMMMMMMM
12 AppPublisherURL=http://www.sdzn.com/
13 AppSupportURL=http://www.sdzn.com/
14 AppUpdatesURL=http://www.sdzn.com/
15 DefaultDirName={pf}\LessonTool
16 DefaultGroupName=XXXXXXXXXXXXXXXX
17 OutputDir=C:\Documents and Settings\Administrator\桌面\MMMMMMM_201200614\
18 OutputBaseFilename=XXXXXXXXXXXXXXXX_20120626_0935_覆盖dotFramework
19 Compression=lzma
20 SolidCompression=yes
21 
22 [Languages]
23 Name: default; MessagesFile: compiler:Default.isl
24 
25 [Files]
26 Source: C:\Documents and Settings\Administrator\桌面\MMMMMMM_201200614\package\Debug\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
27 ; 注意: 不要在任何共享的系统文件使用 "Flags: ignoreversion"
28 Source: C:\Documents and Settings\Administrator\桌面\MMMMMMM_201200614\package\dsoFramer\*; DestDir: {win}; Languages: 
29 
30 [Icons]
31 Name: {group}\{cm:UninstallProgram,XXXXXXXXXXXXXXXX}; Filename: {uninstallexe}
32 Name: {group}\XXXXXXXXXXXXXXXX; Filename: {app}\LessonTool.exe
33 Name: {commondesktop}\XXXXXXXXXXXXXXXX; Filename: {app}\LessonTool.exe
34 
35 [Run]
36 Filename: {win}\dsoFramer2.bat; WorkingDir: {tmp}; Flags: nowait runminimized
37 Filename: {app}\upgrade\Temp\wic_x86_chs.exe; Parameters: /quiet /norestart; WorkingDir: {tmp}; Flags: runhidden; StatusMsg: 安装Wic,大约需要1分钟,请稍后……
38 Filename: {app}\upgrade\Temp\dotNetFx40_Full_x86_x64.exe; Parameters: /quiet /norestart; WorkingDir: {tmp}; Flags: runhidden; StatusMsg: 安装.NetFramework,大约需要15分钟,请稍后……
39 Filename: {app}\upgrade\Temp\vcredist_x86.exe; Parameters: /quiet /norestart; WorkingDir: {tmp}; StatusMsg: 安装VC++支持环境,大约需要1分钟,请稍后……
40 
41 ;[Registry]
42 ;Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Run; ValueType: expandsz; ValueName: ThinkTankBox; ValueData: {app}\Bin\ThinkTankBox.exe
43 
44 [Messages]
45 WelcomeLabel1=XXXXXXXXXXXXXXXX V1.1.8.8
46 WelcomeLabel2=XXXXXXXXXXXXXXXX V1.1.8.8
复制代码

检测.netFramework

View Code
复制代码
  1 ; 脚本用 Inno Setup 脚本向导 生成。
  2 ; 查阅文档获取创建 INNO SETUP 脚本文件详细资料!
  3 
  4 [Setup]
  5 ; 注意: AppId 的值是唯一识别这个程序的标志。
  6 ; 不要在其他程序中使用相同的 AppId 值。
  7 ; (在编译器中点击菜单“工具 -> 产生 GUID”可以产生一个新的 GUID)
  8 AppId={{E47F55B6-5604-4430-A9BE-AE7ADAB5D08C}
  9 AppName=XXXXXXXXXXXXXXXX V1.1.8.8
 10 AppVerName=XXXXXXXXXXXXXXXX V1.1.8.8
 11 AppPublisher=MMMMMMMXXXXXXXXXXXXXXXXX
 12 AppPublisherURL=http://www.sdzn.com/
 13 AppSupportURL=http://www.sdzn.com/
 14 AppUpdatesURL=http://www.sdzn.com/
 15 DefaultDirName={pf}\LessonTool
 16 DefaultGroupName=XXXXXXXXXXXXXXXX
 17 OutputDir=C:\Documents and Settings\Administrator\桌面\MMMMMMM_201200614\
 18 OutputBaseFilename=XXXXXXXXXXXXXXXX_20120626_0935_检测dotFramework
 19 Compression=lzma
 20 SolidCompression=no
 21 
 22 [Languages]
 23 Name: default; MessagesFile: compiler:Default.isl
 24 
 25 [Files]
 26 Source: C:\Documents and Settings\Administrator\桌面\MMMMMMM_201200614\package\Debug\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
 27 ; 注意: 不要在任何共享的系统文件使用 "Flags: ignoreversion"
 28 Source: C:\Documents and Settings\Administrator\桌面\MMMMMMM_201200614\package\dsoFramer\*; DestDir: {win}; Languages: 
 29 
 30 [Icons]
 31 Name: {group}\{cm:UninstallProgram,XXXXXXXXXXXXXXXX}; Filename: {uninstallexe}
 32 Name: {group}\XXXXXXXXXXXXXXXX; Filename: {app}\LessonTool.exe
 33 Name: {commondesktop}\XXXXXXXXXXXXXXXX; Filename: {app}\LessonTool.exe
 34 
 35 
 36 [Run]
 37 Filename: {win}\dsoFramer2.bat; WorkingDir: {tmp}; Flags: nowait runminimized
 38 ;Filename: {app}\LiveUpdate\Temp\wic_x86_chs.exe; Parameters: /quiet; WorkingDir: {tmp}; Flags: runhidden; StatusMsg: 安装Wic
 39 ;Filename: {app}\LiveUpdate\Temp\dotNetFx40_Full_x86_x64.exe; Parameters: /quiet; WorkingDir: {tmp}; Flags: runhidden; StatusMsg: 安装.Net
 40 Filename: {app}\upgrade\Temp\vcredist_x86.exe; Parameters: /quiet /norestart; WorkingDir: {tmp}; StatusMsg: 安装VC++支持环境,大约需要1分钟,请稍后……
 41 
 42 
 43 [Code]
 44 function InitializeSetup: Boolean;
 45 
 46 var Path:string ;
 47 
 48     ResultCode: Integer;
 49 
 50     dotNetV4RegPath:string;
 51 
 52     dotNetV4PackFile:string;
 53 
 54     wic:string;
 55 
 56 begin
 57 
 58 
 59 dotNetV4RegPath:='SOFTWARE\Microsoft\.NETFramework\policy\v4.0';
 60 
 61 dotNetV4PackFile:='{src}\环境配置\dotNetFx40_Full_x86_x64.exe';
 62 
 63 wic:='{src}\环境配置\wic_x86_chs.exe';
 64 
 65     if RegKeyExists(HKLM, dotNetV4RegPath) then
 66 
 67     begin
 68 
 69         Result := true;
 70 
 71     end
 72 
 73     else
 74 
 75     begin
 76 
 77         Exec(ExpandConstant(wic), '/q /norestart', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
 78 
 79         if MsgBox('正在安装MMMMMMM必备组件.Net Framework 4.0,此过程将会持续15分钟左右,请稍后……', mbConfirmation, MB_YESNO) = idYes then
 80 
 81         begin
 82 
 83             Path := ExpandConstant(dotNetV4PackFile);
 84 
 85             if(FileOrDirExists(Path)) then
 86 
 87             begin
 88 
 89                 Exec(Path, '/q /norestart', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
 90 
 91             end
 92 
 93             else
 94 
 95             begin
 96 
 97                 if MsgBox('软件安装目录中没有.Net Framework的安装程序,跳过安装.Net Framework 4.0?', mbConfirmation, MB_YESNO) = idYes then
 98 
 99                 begin
100 
101                 Result := true;
102 
103                 end
104 
105             end
106 
107         end
108 
109         Result := true;
110 
111     end;
112 
113 end;
复制代码
原文地址:https://www.cnblogs.com/spinsoft/p/2566013.html