inno setup 打包脚本相关编辑

使用 Inno Setup 打包程序并添加中文向导 Inno Setup是一个免费且功能强大的工具,用于创建Windows安装程序。本文将详细讲解如何使用Inno Setup打包程序,并为安装程序添加中文向导支持。 阅读详情

1.创建新的GUID

function CoCreateGuid(var Guid:TGuid):integer;
 external 'CoCreateGuid@ole32.dll stdcall';
 
function inttohex(l:longword; digits:integer):string;
var hexchars:string;
begin
 hexchars:='0123456789ABCDEF';
 setlength(result,digits);
 while (digits>0) do begin
  result[digits]:=hexchars[l mod 16+1];
  l:=l div 16;
  digits:=digits-1;
 end;
end;
 
function GetGuid(dummy:string):string;
var Guid:TGuid;
begin
  if CoCreateGuid(Guid)=0 then begin
  result:='{'+IntToHex(Guid.D1,8)+'-'+
           IntToHex(Guid.D2,4)+'-'+
           IntToHex(Guid.D3,4)+'-'+
           IntToHex(Guid.D4[0],2)+IntToHex(Guid.D4[1],2)+'-'+
           IntToHex(Guid.D4[2],2)+IntToHex(Guid.D4[3],2)+
           IntToHex(Guid.D4[4],2)+IntToHex(Guid.D4[5],2)+
           IntToHex(Guid.D4[6],2)+IntToHex(Guid.D4[7],2)+
           '}';
  end else
    result:='{00000000-0000-0000-0000-000000000000}';
end;

 

2.获取本地日期

function GetSystemDataTimeString(Param: String): string;
begin
result := GetDateTimeString('yyyy/mm/dd hh:nn:ss', '-', ':');
end;

 

3.编辑ini文件

[INI]
Filename: "{app}\SysConfig.ini"; Section: "System";Key: "GUID"; String: {code:GetGuid}
Filename: "{app}\SysConfig.ini"; Section: "System";Key: "SysTime"; String: {code:GetSystemDataTimeString}

4.打包多个启动exe程序

#define MyAppName "程序名称1"
#define MyAppVersion "1.0.2021.0116"
#define MyAppPublisher "公司"
#define MyAppURL "公司网站"
#define MyAppExeName "exe程序1"
#define MyAppSevName "程序名称2"
#define MyAppSevExeName "exe程序2"

;桌面
[Icons]
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
Name: "{autoprograms}\{#MyAppSevName}"; Filename: "{app}\{#MyAppSevExeName}"
Name: "{autodesktop}\{#MyAppSevName}"; Filename: "{app}\{#MyAppSevExeName}"; Tasks: desktopicon

;启动程序
[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
Filename: "{app}\{#MyAppSevExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppSevName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent

 

利用Inno Setup打包Qt程序 【更新】 2012-09-14,更新示例脚本,添加可选择的创建桌面快捷方式 【问题描述】Qt程序如何打包?最简单的方法是找到对应的动态链接库,然后连同程序一起打成压缩包发布(打包QT编写的应用程序)。另一种方法是编译为静态文件,作为绿色软件发布,网上介绍了相关的编译方法,比较复杂。一种方式是Windows如何打包Qt程序提供的方式。这几种方式效果不是很令人满意。还有一种就是利用InstallS 阅读详情

相关推荐

Inno Setup 系列之添加管理员权限

需求 打包的应用需要管理员权限 解决 1、在[Setup]节点添加 PrivilegesRequired=admin 2、在Inno Setup的安装目录下有个SetupLdr.e32文件,用exescope打开,然后在十六进制区域编辑,在右边ASCII显示区域无法编辑,修改到如下图所示。 3、重新打包软件 Inno Setup 中文帮助文档 https://download.youkuaiyun.com/...

qq_36190858的博客 5745

常用功能------获取当前时间

unity中获取当前的时间

qq_37179591的博客 719

Inno Setup 打包发布exe程序的步骤及注意事项及解决发布后的exe解压后文件都在主目录下导致程序无法正常运行的问题

目录 一、链接.exe文件的.dll动态链接库 1.1、可以利用QT官网提供的工具windeployqt 生成方式见如下: 1.2、使用脚本文件 二、使用绿色汉化版打包小程序inno setup5.5 .exe对目标目录下的文件进行打包发布。 2.1、压缩 2.2、 解压 首先介绍一下自己的经历:我在将Qt Creater 生成的xx.exe中,想将.exe及其相关的动态链接库及其...

来者即是客,我们共同成长 4639

年月日 获取

const minute = new Date().getMinutes()//分。const second = new Date().getSeconds()//秒。

weixin_45142364的博客 383

Unity桌面应用Inno Setup打包:彻底解决Data folder not found错误

在软件打包分发领域,路径依赖和工作目录管理是基础而关键的技术概念。其原理在于应用程序启动时会基于当前工作目录定位资源文件,若路径不匹配则导致加载失败。这一机制的技术价值在于确保软件在不同环境下的可移植性和可靠性。在Unity桌面应用通过Inno Setup制作安装包的场景中,最常见的应用问题便是“Data folder not found”报错,这通常源于快捷方式的工作目录设置不当,使得Unity运行时无法在其预期的相对路径下找到必需的_Data资源文件夹。通过正确配置Inno Setup脚本中的Worki

weixin_33979203的博客 349

inno 脚本获取本机 IP

procedure GetIpButtonOnClick(Sender: TObject); var KeyNames: TArrayOfString; I: Integer; CardIdKeyName, KeyName, ValueName: String; ServiceKey, IpAdd: String; begin CardIdKeyName := 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards'; if RegGetSubkeyNames(HKLM, CardIdKeyName, KeyNames) then begin for I := 0 to GetArrayLength(KeyNames)-1 do begin KeyName := CardIdKeyName + '\' + KeyNames[I]; if RegQueryStringValue(HKLM, KeyName, 'ServiceName', ValueName) then begin ServiceKey := 'SYSTEM\CurrentControlSet\Services\'; ServiceKey := ServiceKey + ValueName + '\Parameters\Tcpip'; if RegQueryMultiStringValue(HKLM, ServiceKey, 'IPAddress', IpAdd) then begin MsgBox('IpAddress:'#13#10#13#10 + IpAdd, mbInformation, MB_OK); break; end end end end else begin // add any code to handle failure here MsgBox('failure', mbInformation, MB_OK); end; end;

比较完整的Inno Setup 安装脚本

转自http://blog.youkuaiyun.com/zqnihao917/article/details/8203079 [Setup] ; 注: AppId的值为单独标识该应用程序。 ; 不要为其他安装程序使用相同的AppId值。 ; (生成新的GUID,点击 工具|在IDE中生成GUID。) AppId={{A9861883-31C5-4324-BD9A-DC3271EEB675}

doxingg的专栏 4539

innosetup标准安装脚本

[Setup] ; 注: AppId的值为单独标识该应用程序。 ; 不要为其他安装程序使用相同的AppId值。 ; (生成新的GUID,点击 工具|在IDE中生成GUID。) AppId={{A9861883-31C5-4324-BD9A-DC3271EEB675} ;程序名 AppName=ISsample ;版本号 AppVerName=ISsample 1.0.0.0 ;发布者名 AppPu...

lisizhe1989的博客 2115

【项目管理】第8章 项目整合管理 --知识点整理

制定项目章程: 第一步,旨在明确项目的目标、范围、关键里程碑等关键信息,为项目的后续工作奠定基础。制订项目管理计划: 在项目章程的基础上,进一步详细规划项目的执行过程,包括时间、成本、质量、风险等方面的管理计划。指导与管理项目执行: 按照项目管理计划执行项目,同时监控项目的进展,确保项目按照计划进行。监控项目工作: 对项目的执行情况进行持续监控,及时发现并解决问题,确保项目目标的实现。

weixin_42081167的博客 1594

Carla-编译CarlaUE4提示HoloLens.Automation项目缺少Windows程序集?

编译CarlaUE4提示HoloLens.Automation项目缺少Windows程序集?不妨看看这个!

DSK_981029的博客 2573

Inno Setup选择语言并写入配置文件、翻译提示信息

制作一个支持多种语言的安装包,应当具备以下几种能力: 读取系统语言设置,并作为启动时的默认语言 可选择安装的语言,随后显示对应语言的的安装提示语 将选择的语言写入到配置文件,以供程序运行时进行判断 对于默认语言,可以设置 Setup 区段的LanguageDetectionMethod 属性,有三个有效值,uilanguage 根据用户的系统界面语言作为默认语言,locale 根据时区确定默认语言,none 则根据 Languages 区段指定的第一种语言作为默认语言,默认为 uilanguage。.

龚建波 8641

基于pytest+Allure+Python+CANoe的汽车诊断自动化测试框架搭建实战

自动化测试是提升软件质量和研发效率的关键技术,其核心原理是通过脚本模拟人工操作,实现测试用例的自动执行与结果验证。在汽车电子领域,诊断服务测试是确保车辆ECU(电子控制单元)功能正常的重要环节,传统手动测试在面对海量用例和频繁回归时效率低下。本文聚焦于如何利用Python的pytest测试框架、Allure报告工具以及Excel数据驱动,构建一个与Vector CANoe仿真测试环境深度集成的自动化测试解决方案。该方案通过Python调用CANoe的COM接口,实现了诊断报文的自动发送与响应验证,并结合Al

weixin_30384217的博客 677

使用Inno Setup将Unity程序打成一个安装包

使用Inno Setup将Unity程序打成一个安装包

R3333355726856的博客 2190

快速上手CH340N电路设计(CH340N USB转串口模块 USB Type-C接口 CH340系列芯片讲解)

一、上模块 二、功能分析 l 芯片:CH340N l 输入接口:USB、TYPE-C l 输出接口:TTL(5V\3.3V\GND\TX\RX) l 指示灯:电源、TX、RX 三、CH340x芯片 l CH340 是一个 USB 总线的转接芯片,实现 USB 转串口 l 全速 USB 设备接口,兼容 USB V2.0 l 硬件全双工串口,内置收发缓冲区,支持通讯波特率 50bps~2Mbps l 支持常用的 MODEM 联络信号 RTS、DTR、DCD、RI、DS...

东小东博客 5万+

【乐企】开票控制服务

例子:企业信息初始化。

九七的博客 451

Inno Setup 安装界面、卸载界面+美化

Inno Setup用Delphi写成,其官方网站同时也提供源程序免费下载。它虽不能与Installshield这类恐龙级的安装制作软件相比,但也当之无愧算是后起之秀。Inno Setup是一个免费的安装制作软件,小巧、简便、精美是其最大特点,支持pascal脚本,能快速制作出标准Windows风格的安装界面,足以完成一般安装任务。网上找了很多代码,运行无法通过,自己花费3天时间改好了。总体效果还是很棒的。版本:Inno Setup V6.05。

9.歌工作室 4516

Qemu开发ARM篇-5、buildroot制作根文件系统并挂载启动

在上一篇中,我们编译了kernel,并在qemu上进行了运行,但到最后,在挂载根文件系统时候,挂载失败,这是因为我们还没有根文件系统,在本章中,我们将制作根文件系统。rootfs制作方式有很多方式,如busyBoxbuildrootYocto等,在该篇章中,我们使用buildroot来制作根文件系统,主要考虑到busyBox制作完还需要手动首改一些启动配置比较繁琐,而Yocto如果电脑配置不是很好,编译时间过长,比较麻烦。

sinat_33909696的博客 2465

从零定制与构建 CopyQ Windows 安装包:Inno Setup 脚本全解析

CopyQ 的 Windows 安装程序(`copyq-<版本>-setup.exe`)并非由手写代码生成,而是由 Inno Setup 根据仓库中的 [shared/copyq.iss](https://link.gitcode.com/i/b894674af13f5c7eb9bfdd7519e2991a) 脚本脚本化打包产出。本文以 [docs/customize-and-build-the-

gitblog_00819的博客 697

基于C#的工业机器人上位机控制程序开发(搭配松下PLC+MC协议)

基于C#的工业机器人上位机控制程序开发,核心是上位机与松下PLC的MC协议通信和机器人控制的安全逻辑,而不是单纯的界面编写。在工控现场,程序的稳定性和安全性永远是第一位的——比如解耦通信逻辑、处理跨线程问题、添加安全互锁、记录操作日志,这些都是保证产线稳定运行的关键。新手在学习时,建议先跟着步骤搭建好环境,跑通基础的PLC通信和机器人控制功能,再逐步尝试进阶优化。数据模型化、通信封装化、逻辑模块化、UI解耦化。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1239

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Inno Setup创建安装程序Setup.exe的详细教程

Inno Setup是一款免费且功能强大的安装程序制作工具,它能够帮助我们轻松创建安装程序。本文将详细介绍如何使用Inno Setup创建安装程序Setup.exe。

weixin_73953650的博客 1841

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Inno Setup 打包 Qt 程序

如果你需要更精细的控制,可以手动编辑生成的 .iss 文件。通过以上步骤,你就能成功使用 Inno Setup 打包 Qt 程序了。

yy_xzz的博客 165

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Qt Inno setup 打包[转]

Inno Setup

baidu_41388533的博客 1001

INNO SETUP vs NSIS:安装包制作效率大比拼

对这类工具对比特别有帮助,它的AI对话功能可以直接生成配置示例,还能一键部署测试环境。我经常用它快速验证不同工具的编译效果,不用反复搭环境真的很省时间。特别是当需要给团队演示时,直接生成可运行的对比案例,效率提升非常明显。最近在给公司项目做安装包时,我仔细对比了INNO SETUP和NSIS这两款主流工具。下面就把我的对比心得分享给大家,希望能帮你选到合适的工具。NSIS在压缩算法上更灵活,支持LZMA/BCJ2等组合,适合对体积敏感的场景。不过当文件量超过500个时,NSIS的增量编译优势会更明显。

CrystalwaveEagle34的博客 750

【亲测免费】 Inno Setup 自定义安装界面

Inno Setup 自定义安装界面 【下载地址】InnoSetup自定义安装界面 Inno Setup 自定义安装界面此资源仓库提供了用于自定义Inno Setup安装程序界面的完整解决方案 项目地址: https://gitc...

gitblog_09735的博客 1001

Inno Setup编译器IDE深度解析:现代代码编辑体验终极指南

作为Windows平台最受欢迎的开源安装程序制作工具,Inno Setup不仅提供强大的安装脚本功能,更配备了功能丰富的集成开发环境。本文将深入解析Inno Setup编译器IDE的现代化代码编辑体验,帮助开发者充分利用这一强大工具。 ## 🔥 为什么选择Inno Setup IDE? Inno Setup编译器IDE是一个专为安装脚本开发设计的集成环境,位于[Projects/Src/ID

gitblog_00734的博客 953
上一篇: C# WiFi多线程收发报文
下一篇: C# Socket 读取可变长度数据
code_long
博客等级 码龄16年 35粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值