Inno Setup 系列之卸载删除文件
需求
Inno Setup 原则上是安装哪些文件就卸载那些文件。
但实际上往往会在应用的使用过程中,会生成一些日志文件或者在更新程序进行文件操作的时候,产生的文件,在卸载的时候,不能删掉,直接保留在原处,或会提示手动清理。这样还是挺影响用户体验的。
解决方法:
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
beginif CurUninstallStep = usDone thenbegin//删除 {app} 文件夹及其中所有文件DelTree(ExpandConstant('{app}'), True, True, True);end;
end;
或
[UninstallDelete]
;删除可能产生的日志文件或图片缩略图缓存文件
Type: files; Name: "{app}\log.txt";
Type: files; Name: "{app}\Thumbs.db";
Type: files; Name: "{app}\update\*.exe";
Type: files; Name: "{app}\update\*.xml";
Type: files; Name: "{app}\update\*.sys";
Type: files; Name: "{app}\update\*.dll";
Type: files; Name: "{app}\update\*.cab";
Type: files; Name: "{app}\update\*.jsp";
Type: dirifempty; Name: "{app}\update";
Inno Setup 中文帮助文档
https://download.csdn.net/download/qq_36190858/10836946
Inno Setup 系列之卸载删除文件相关推荐
- Inno Setup 系列之操作ini文件
需求 应用是多语言的,由ini文件控制具体是哪一类语言.安装程序也是多语言的,在选定安装包语言之后需要同步更新ini文件里面的语言值 ini文件如下: [General] language=en In ...
- Inno Setup 系列之安装、卸载时调用bat
需求 想在安装的时候调用install.bat,在卸载的时候调用uninstall.bat 解决 可以这样写 Inno Setup 的脚本: [Setup] ; NOTE: The value of ...
- Inno Setup 系列之较完整的Inno Setup 安装脚本,具备安装包常用的功能
初接触 Inno Setup ,现把安装包常用的功能安装脚本总结一下,方便以后使用 [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相同的AppId值. ; ...
- Inno Setup 系列之添加管理员权限
需求 Inno Setup打包的程序安装完成后运行失败,这个是因为权限不够,打包的应用需要管理员权限 解决 1.在[Setup]节点添加 PrivilegesRequired=admin 2.在Inn ...
- Inno Setup 安装前卸载原程序
很多時候我們需要在安裝文件之前卸載原有的程序而不是覆蓋安裝,本文的code就是實現了這樣的功能. 實現原理是:從注冊表'UninstallString'項中讀取卸載信息,用Exec進行靜默卸載. 下面 ...
- Inno Setup 介绍
Inno Setup 详解中文资料 其一:使用教程 一.Inno Setup 是什么? InnoSetup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 1997 年,Inno Se ...
- Windows下使用Inno Setup 制作exe安装包
原文地址:点击打开链接 Inno Setup 详解中文资料 其一:使用教程 一.Inno Setup 是什么? InnoSetup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 19 ...
- Inno Setup使用教程【收藏】
如何使用: --------------------------------- 文档约定 创建安装程序 创建脚本 段内参数 一些常量 公共参数 安装脚本段 [Setup] ...
- Inno Setup入门 (软件打包工具)学习笔记 (26课全)
[] : 里面的就是 段 每个段里面的是属性 AppId : 软件的APPID尽量是唯一的,随机生成,尽量不跟其他软件的ID冲突,这个ID安装之后是要写进系统的注册表的,系统在管理和卸载你的软件的时候 ...
最新文章
- C语言结构体指针与结构体变量作形参的区别
- Okhttp、Volley和Gson的简单介绍和配合使用
- windbg工具安装配置及dump抓取
- hashCode和identityHashCode的区别你知道吗?
- nodejs+php+aes加密解密,php,crypto_php与nodejs的加密数据互通,php,crypto,node.js - phpStudy...
- oracle自定义函数获取省份,Oracle 自定义函数Function
- k8s集群部署二(自签TLS证书)
- 计算机应用基础说课稿的模板,计算机应用基础说课稿模板.doc
- win7升级Powershell到5.1(for flutter)
- 强网杯 2018 core ROP做法
- 逃离or逃避:过年后,你还回不回大城市?
- WIN10下装Ubuntu 18.04双系统
- DTOJ 2746. 皇后游戏(game)
- 计算机毕业设计Android网约车拼车打车叫车系统APP
- linux内核Kmalloc - GFP_ATOMIC - GFP_KERNEL - GFP_USER
- 如何排查JVM内存占用过高
- AJAX之父 Jesse James Garrett的用户体验要素
- 计算细长悬臂梁变形,慎用绑定
- 使用vye配置路由代码
- atmega168p与328p_atmega328p中文手册
热门文章
- 6S-7PIOS14~14.7.1密码界面越狱教程
- unicode编码范围:
- H3C防火墙端口开启二层模式,网络不通的解决方法
- 论文参考文献类型代码及书写格式
- Snapchat正挑战Facebook统治地位 激战短消息
- 2012淘宝关键字优化淘宝关键字SEO优化助手|淘宝关键字SEO优化
- gitlab拉取项目报128 fatal: unable to access ‘xxx.git/‘
- php打开工具,php文件用什么软件打开
- php mssql 存储过程 输入参数,MSSQL_SQL Server存储过程中使用表值作为输入参数示例,在2008之前如果我们想要将表作 - phpStudy...
- PostgreSQL PRIVILEGES(权限)