inno setup的安装及简单使用

2023-11-01

安装

使用

1 添加中文安装字体

  • 点击官网左边的Translations–找到Chinese (Simplified)下载后放在该安装目录下的Languages\文件夹下

2 制作使用管理员权限启动的安装包

  • 使用ResourceHacker修改inno setup安装包脚本的level

    2.1下载安装Resource Hacker
    • Resource Hacker 免费软件,用于查看,修改,添加和删除 Win32 可执行文件的资源。内置了一个内部资源编译器和反编译器
    2.2 安装并打开ResourceHackesr

在这里插入图片描述

2.3 修改为管理员权限
  • 修改inno setup资源
  • 使用ResourceHacker打开innosetup的SetupLdr.e32的Mainfest里第24行level改为requireAdministrator
    在这里插入图片描述

相关语法

1.安装完成之后运行指定程序

[Run]
Filename: "{app}\GAME.exe"; Flags: nowait skipifsilent
  • nowait – 不等待完成就处理下一个条目。

    • [官方说明,处理下一个 [Run] 条目前或完成安装前不等待进程执行完成]
  • skipifsilent — 如果后台运行则不提示点击“完成”。

    • [官方说明] ,仅在 [Run] 段有效。告诉安装程序如果安装程序在后台运行则跳过这个条目。

2.安装包使用中文

[Languages]
Name: "chinesesimplified"; MessagesFile: "compiler:Languages\ChineseSimplified.isl"

3.把安装自动注册dll文件

  • dll文件放到安装目录下顺便注册
[Files]
Source: "..\x64\Release\sdUkey.dll"; DestDir: "{app}"; Flags: ignoreversion  restartreplace uninsrestartdelete regserver

4.安装过程静默安装第三方安装包

  • 释放安装包到安装目录后执行安装相关函数

[Files]
Source: ".\ePass3003-SimpChinese.exe"; DestDir: "{tmp}"; AfterInstall: RunInstaller

  • 执行的函数内容

[Code]
procedure RunInstaller;
var
  ResultCode: Integer;
begin
  if not Exec(ExpandConstant(CurrentFileName), '/S', '', SW_SHOWNORMAL   ,
    ewWaitUntilTerminated, ResultCode)
  then
    MsgBox('Other installer failed to run!' + #13#10 +
      SysErrorMessage(ResultCode), mbError, MB_OK);
end; 

5 安装完成后立即运行程序

[Run]
Filename: "{app}\win32Key.exe"; Flags: nowait skipifsilent

6 设置开机自启

[Tasks]
Name: "startupicon"; Description: "开机启动"; GroupDescription: "{cm:AdditionalIcons}";   
[Icons]                                                                                
Name: "{userstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: startupicon

7.安装之前卸载

[Code]
function InitializeSetup(): boolean;
var
  ResultStr: String;
  ResultCode: Integer;
begin
  if RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{10CCA44C-9F7F-4B59-AC5E-637332E62D60}is1', 'UninstallString', ResultStr) then
    begin
      ResultStr := RemoveQuotes(ResultStr);
      Exec(ResultStr, '/silent', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
    end;
    result := true;
end;

相关目录说明

目录 目录说明
{tmp} 第三方安装包安装过程存放临时文件的
{app} 用户选择的安装目录
{sys} 系统目录system32或者sysWOW64目录
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

inno setup的安装及简单使用 的相关文章

随机推荐

  • mysql jdbcurl配置_jdbc的URL配置

    Microsoft SQL Server Microsoft SQL Server JDBC Driver 一般用来连接 SQLServer 2000 驱动程序包名 msbase jar mssqlserver jar msutil jar
  • 【金融申请评分卡】目标变量界定

    一 目标变量是什么 目标变量就是假定申请客户的好坏 逻辑回归公式里的Y 先来看下逻辑回归公式 y 11 e z y 1 1 e z
  • c++入门到精通教程 c++11/14/17-王健伟-专题视频课程

    c 入门到精通教程 c 11 14 17 528人已学习 课程介绍 本教程适合那些只有一点点c语言编程知识的新手 也适合那些c 98标准已经掌握的不错但对c 11 14 17新标准基本无所知的c 开发老手 欢迎大家尽早加入学习 请大家从授课
  • 网络流媒体(七)———RTSP

    RTSP协议介绍 RTSP协议的一些分析 一 一些字符串函数的使用 RTSP协议的一些分析 二 printf类似函数 sscanf以及log保存到内存中 printf输入重定位 1 简介 DSP产生的媒体流需要通过网络传送到客户端 如图1
  • python编程遵循哪些规律_Python实操(3):python编程规范

    选择pythoncharm作为Python开发ide也是在网上查了好长时间 这两天了解到visual studio code强大 易用 同时也一直用visual studio做c c 开发 所以决定把以后的开发平台切换到微软系 换平台以后发
  • 前后端分离:SpringBoot项目部署服务器操作步骤详细

    部署后端 SpringBoot到服务器 首先就是对自己项目application yaml进行配置 此处使用过多mysql8 0 spring datasource url jdbc mysql 127 0 0 1 3306 book se
  • 计算机网络笔记and题解

    上次博客就写了一点划分子网和子网掩码相关的计算 然后还要一个重要的五分类编址CIDR 也就是构造超网 无分类编址CIDR Classless Inter Domain Routing 正式名字是无分类域间路由选择 特点 1 CIDR消除了传
  • 秒级数据转化为分钟级数据sql编写

    前言 利用python读取hive 将hive中秒级数据转化为以10分钟为间隔的数据 除时间与设备id外所有字段的值求平均值 代码 连接hive 创建连接通道 并且得到连接通道的钥匙 句柄 conn connect host 地址 port
  • 存储过程解析

    使用存储过程来解决涨工资 涨工资 总裁涨1000 经理涨800 其他人涨400 伪代码 ResultSet rs select empno job from emp While rs next Int eno rs getInt empno
  • Stable diffusion加载safetensors 模型出现Exception: device privateuseone:0 is invalid

    一 问题 博主用CPU硬解 Stable diffusion sd v1 4 ckpt能跑 但换成v1 5 pruned emaonly safetensors等最新格式的模型就出现Exception device privateuseon
  • MATLAB数据可视化

    MATLAB数据可视化 二维绘图 plot命令 plot y plot x y plot x y s 常见的二维绘图常用设置选项 fplot 三维绘图 plot3 mesh 函数 绘制参数网状表面图 surf 函数 绘制三维阴影曲面图 辅助
  • 蓝桥杯:三羊献瑞(答案不唯一)

    目录 题目描述 题目分析 测试用的代码 Java 答案 因为我个人做选择题有把所有可能性列举的习惯 所以我习惯性列举一下 发现答案并不像题目里面说的 三羊献瑞是唯一的 具体看我的测试用例 Test 但是结果呢 题目描述 本题为填空题 只需要
  • 软件测试和软件开发哪个发展更好

    经常有想转IT行业的同学 在了解软件测试和软件开发之后不知道转那个岗位好 今天就系统的 从多个维度来比较软件测试与软件开发 具体包括从基本素质要求 性格要求 入职门槛 知识结构 竞争压力 职业发展 职业前景等 希望能给在选择软件测试与开发朋
  • java设计模式之抽象工厂模式

    什么是抽象工厂设计模式 抽象工厂模式是一种创建型设计模式 它提供了一种创建一系列相关或依赖对象的方法 而无需指定它们具体的类 抽象工厂模式是工厂方法模式的扩展 它使用一组相关的工厂来创建对象 而工厂方法模式只是使用一个单一的工厂 在抽象工厂
  • APP移动端测试+安装+ADB命令的介绍

    重点 app测试的内容 add命令 monkey命令 次重点 模拟器的安装 雷电 夜神 android的自带的模拟器使用 常规测试 真机测试 简单了解云测Testing 腾讯云 在职小伙伴下周演示 了解 市场有的移动端的操作系统有 1 an
  • LeetCode技巧篇(一)prefix sum 前缀和

    介绍 前缀和 prefix sum 是算法题中比较实用的一种技巧 当算法题的背景是整数型数组且出现 子数组和 或者 连续的子数组 既可以考虑使用前缀和来求解会得到不错的效果 假设给定的数组A各个元素分别为 那么我们可以得到一个前缀和数组B
  • ICCV 2023

    点击下方卡片 关注 CVer 公众号 AI CV重磅干货 第一时间送达 点击进入 gt 3D点云和Transformer 交流群 本文介绍我们在ICCV 2023上接收的论文 PointCLIP V2 Adapting CLIP for P
  • snull驱动环境搭建与测试分析

    Here are possible values for the network numbers Once you put these lines in etc networks you can call your networks by
  • SpringBoot/Spring Cloud常见注解(面试)

    RequestMapping 在Spring MVC 中使用 RequestMapping 来映射请求 也就是通过它来指定控制器可以处理哪些URL请求 将请求和处理请求的控制器方法关联起来 建立映射关系 这个控制器方法请求路径为http l
  • inno setup的安装及简单使用

    文章目录 安装 使用 1 添加中文安装字体 2 制作使用管理员权限启动的安装包 2 1下载安装 Resource Hacker http www angusj com resourcehacker 2 2 安装并打开ResourceHack