zoukankan      html  css  js  c++  java
  • 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;
    复制代码
  • 相关阅读:
    List遍历时删除与迭代器(Iterator)解惑
    从一次“并发修改字段业务”引出多版本并发控制与InnoDB锁
    RocketMQ存储机制与确认重传机制
    Java中的锁
    jmeter在non-GUI模式下用法
    Java SPI机制简述
    深拷贝、浅拷贝与Cloneable接口
    Java中的小数运算与精度损失
    java中的枚举类
    SpringBoot是如何实现自动配置的
  • 原文地址:https://www.cnblogs.com/spinsoft/p/2566013.html
Copyright © 2011-2022 走看看