首页 > 其他分享 >Inno Setup6.2.0汉化版软件及生成更新包脚本(三)

Inno Setup6.2.0汉化版软件及生成更新包脚本(三)

时间:2023-12-01 15:14:51浏览次数:38  
标签:10 更新包 end Setup6.2 汉化版 begin 1.0 13 define

按照  Inno Setup6.2.0汉化版软件及生成安装脚本(二)

的安装包安装后可以安装以下脚本进行更新,会自动识别版本,关闭服务,关闭打开的客户端,更新客户端,最后启动服务。

//定义常量
#define MyAppId "08FBA954-A306-4782-8C02-05F3DFE01772"
#define MyAppName "客户端名称"
#define OldMyAppVersion "1.0.0.0"
#define MyAppVersion "1.0.0.1"
#define MyAppPublisher "公司名称"
#define MyAppURL "公司网址"
#define MyAppExeName "Client.exe"
#define MyAppAssocName MyAppName + " 文件"
#define MyAppAssocExt ".exe"
#define MyAppAssocKey StringChange(MyAppAssocName, " ", "") + MyAppAssocExt

[Setup]
//AppId的值为单独标识该应用程序。不要为其他安装程序使用相同的AppId值。 若要生成新的 GUID,可在菜单中点击 "工具|生成 GUID"。
//更新包的AppId一定要和安装包的AppId一样 AppId={{08FBA954-A306-4782-8C02-05F3DFE01772} //应用程序名称 AppName={#MyAppName} AppVersion={#MyAppVersion} ;AppVerName={#MyAppName} {#MyAppVersion} AppPublisher={#MyAppPublisher} AppPublisherURL={#MyAppURL} AppSupportURL={#MyAppURL} AppUpdatesURL={#MyAppURL} DefaultDirName={autopf}\{#MyAppName} ChangesAssociations=yes DisableProgramGroupPage=yes InfoBeforeFile=E:\JCY\JCY_DATA\MPC\HL\KWB\TMT\V101.24\01CHIP\TMT\安装说明.txt ; 以下行取消注释,以在非管理安装模式下运行(仅为当前用户安装)。 ;PrivilegesRequired=lowest OutputBaseFilename=VISOUpdate SetupIconFile=E:\JCY\JCY_DATA\MPC\HL\KWB\TMT\V101.24\01CHIP\TMT\viso.ico Compression=lzma SolidCompression=yes WizardStyle=modern ArchitecturesInstallIn64BitMode=x64 ;[Languages] ;Name: "chinesesimp"; MessagesFile: "compiler:Default.isl" ;Name: "english"; MessagesFile: "compiler:Languages\English.isl" ;[Tasks] ;Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked ;[Icons] ;Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" ;Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon [Files] Source: "E:\Update\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion Source: "E:\Update\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs ;安装文件太多,不全部标识引用 ; ; ; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion” [Run] Filename: "{app}\Server\open.bat"; Flags: runhidden [Code] //安装时判断系统中是否已安装该软件以前版本 function InitializeSetup(): Boolean; var strVer: String; isRunning:Integer; cycleCount:Integer; ResultCode: Integer; begin Result := true; if Is64BitInstallMode then //是64位操作系统 begin if RegQueryStringValue(HKA,'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{#MyAppId}}_is1', 'DisplayVersion', strVer) then begin if not (strVer='{#OldMyAppVersion}') then begin MsgBox('软件版本号错误:'#13#10#13#10'1.0.0.1 升级仅支持1.0.0.0 版本!', mbInformation, MB_OK); Result := False; end else if not RegKeyExists(HKA, 'Software\Classes\Applications\{#MyAppExeName}\YourClient2023') then begin MsgBox('系统没有安装 1.0.0.0原版程序!'#13#10#13#10'请先安装原版程序后,再运行本更新程序!', mbInformation, MB_OK); Result := False; end else begin if RegQueryStringValue(HKA,'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{#MyAppId}}_is1', 'InstallLocation', strVer) then begin if Exec(ExpandConstant(strVer+'Server\close.bat'), '/silent', '', SW_HIDE, ewWaitUntilTerminated, ResultCode) then begin // 批处理文件成功执行 // 可以在这里添加相应的逻辑 end else begin // 批处理文件执行出错 // 可以在这里添加相应的逻辑 end; end end; end else begin MsgBox('系统没有安装 1.0.0.0原版程序!'#13#10#13#10'请先安装原版程序后,再运行本更新程序!!', mbInformation, MB_OK); Result := False; end; end else //是32位操作系统 begin if RegQueryStringValue(HKLM,'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{#MyAppId}}_is1', 'DisplayVersion', strVer) then begin if not (strVer='{#OldMyAppVersion}') then begin MsgBox('软件版本号错误:'#13#10#13#10'1.0.0.1 升级仅支持 1.0.0.0 版本!', mbInformation, MB_OK); Result := False; end else if not RegKeyExists(HKLM, 'Software\Classes\Applications\{#MyAppExeName}\YourClient2023') then begin MsgBox('系统没有安装 1.0.0.0原版程序!'#13#10#13#10'请先安装原版程序后,再运行本更新程序!', mbInformation, MB_OK); Result := False; end; end else begin MsgBox('系统没有安装 1.0.0.0原版程序!'#13#10#13#10'请先安装原版程序后,再运行本更新程序!!', mbInformation, MB_OK); Result := False; end; end; end;

 

标签:10,更新包,end,Setup6.2,汉化版,begin,1.0,13,define
From: https://www.cnblogs.com/js-jiangchenyang/p/17869724.html

相关文章

  • Inno Setup6.2.0汉化版软件及生成安装包脚本(二)
    个人研究,为了记录下打包脚本,大家也可以安装打包脚本向导一步一步生成。下面是我打包的脚本,其中包含了安装过程中执行批处理文件,是为了安装API服务,可以参考下:;脚本由InnoSetup脚本向导生成!;有关创建InnoSetup脚本文件的详细资料请查阅帮助文档!#defineMyAppName"客......
  • Inno Setup6.2.0汉化版软件打包工具(1)
    InnoSetup是一个免费的安装制作软件,小巧、简便、精美是其最大特点,支持pascal脚本,能快速制作出标准Windows风格的安装界面,足以完成一般安装任务。该软件用Delphi写成,其官方网站同时也提供源程序免费下载。它虽不能与Installshield这类恐龙级的安装制作软件相比,但也当之无愧算是后......
  • SecureCRT汉化版安装、使用以及常见问题
    SecureCRT8.5是一款支持SSH(SSH1和SSH2)的终端仿真程序,适用于Windows、MAC和Linux的SecureCRT的客户端程序。简单来说,就是可以在Windows环境下登录UNIX或Linux服务器主机的软件。通过高级会话管理提高了工作效率,并提供了一系列节省时间和简化重复性任务的方法,为组织中的每个人......
  • Ubuntu20.04安装Docker及汉化版管理面板Portainer
    一、安装Docker 1、由于apt官方库里的docker版本可能比较旧,所以先卸载可能存在的旧版本:sudoapt-getremovedockerdocker-enginedocker-cedocker.io 2、更新apt包索引:sudoapt-getupdate 3、安装以下包以使apt可以通过HTTPS使用存储库(repository):sudoapt-getinst......
  • 【IC 文案编辑排版软件】InCopy CC2018 for Mac 中文汉化版下载
    AdobeInCopyCC2018forMac中文汉化版是Adobe公司发布的一款专业的文案编辑排版软件,简称ICCC2018Mac版。AdobeInCopyCC2018采用了更加现代化的UI设计,并且增加了对HIDPI和视网膜显示屏的支持,增强了字体搜索功能和灵活的页面访问,更加精确字数,随心同步字体,提高工作效率。软件......
  • 【Mac版CAD下载】AutoCAD 2022 for Mac中文汉化版安装激活步骤
    AutodeskAutoCAD2022Mac是一款运行在mac平台上的二维和三维CAD设计软件,AutodeskAutoCAD2022Mac具有良好的用户界面,其广泛的适应性可以在各种操作系统支持的微型计算机和工作站上运行,AutodeskAutoCAD2022Mac主要用于二维绘图、详细绘制、设计文档和基本三维设计,可大幅度提......
  • Microsoft Office 2016 for Mac 中文汉化版下载 Office办公软件
    MicrosoftOffice2016MAC版是一款专业好用的办公软件,MicrosoftOffice2016MAC官方版包括Word、Excel、PowerPoint、OneNote和Outlook等组件,完美支持OSXElCapitan、Yosemite以及Retina高分辨率视网膜屏幕。软件地址:看置顶贴office2016mac功能介绍1、Word创建、完善和......
  • 【Dw 网页编辑开发工具】Dreamweaver CC2018 Mac中文汉化版
    Dreamweavercc2018mac中文汉化版是Adobe公司开发的一款专门用于macOS10.11或更高系统的网页编辑开发工具,也是当前最流行、最为广泛使用的网站开发软件,大家对这款软件应该都有听说过吧,毕竟该软件在行业中的知名度非常高,并且它的编辑功能也是众所周知。软件地址:看置顶贴软件特色:1......
  • 【Au 音频处理软件】Audition CC 2018 Mac 中文汉化版安装教程
    AuditionCC2018Mac中文汉化版是由Adobe公司位Mac用户所开发的一款OSX版本的专业性极强的音频处理软件,简称Aucc2018mac,软件提供了效果最佳的音频清理、恢复和精确编辑工具,通过此软件您可以快速轻松制作音频、编辑音频以及进行后期处理,为音频制作者提供了一系列的音频制作处理服务......
  • 【动画制作编辑软件】Adobe Animate CC 2018 Mac 中文汉化版
    AnimateCC2018提供众多实用设计工具,主要用于html动画编辑,设计适合游戏、应用程序和Web的交互式矢量动画,可帮助我们不用写代码的情况下完成简单的交互动效实现,借助这款业界领先的动画工具集,让网页设计人员轻松制作适用于网页、数位出版、多媒体广告、应用程序、游戏等用途的互动式......