需求

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 系列之卸载删除文件相关推荐

  1. Inno Setup 系列之操作ini文件

    需求 应用是多语言的,由ini文件控制具体是哪一类语言.安装程序也是多语言的,在选定安装包语言之后需要同步更新ini文件里面的语言值 ini文件如下: [General] language=en In ...

  2. Inno Setup 系列之安装、卸载时调用bat

    需求 想在安装的时候调用install.bat,在卸载的时候调用uninstall.bat 解决 可以这样写 Inno Setup 的脚本: [Setup] ; NOTE: The value of ...

  3. Inno Setup 系列之较完整的Inno Setup 安装脚本,具备安装包常用的功能

    初接触 Inno Setup ,现把安装包常用的功能安装脚本总结一下,方便以后使用 [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相同的AppId值. ; ...

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

    需求 Inno Setup打包的程序安装完成后运行失败,这个是因为权限不够,打包的应用需要管理员权限 解决 1.在[Setup]节点添加 PrivilegesRequired=admin 2.在Inn ...

  5. Inno Setup 安装前卸载原程序

    很多時候我們需要在安裝文件之前卸載原有的程序而不是覆蓋安裝,本文的code就是實現了這樣的功能. 實現原理是:從注冊表'UninstallString'項中讀取卸載信息,用Exec進行靜默卸載. 下面 ...

  6. Inno Setup 介绍

    Inno Setup 详解中文资料 其一:使用教程 一.Inno Setup 是什么? InnoSetup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 1997 年,Inno Se ...

  7. Windows下使用Inno Setup 制作exe安装包

    原文地址:点击打开链接 Inno Setup 详解中文资料 其一:使用教程 一.Inno Setup 是什么? InnoSetup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 19 ...

  8. Inno Setup使用教程【收藏】

    如何使用:  --------------------------------- 文档约定   创建安装程序   创建脚本   段内参数   一些常量   公共参数   安装脚本段   [Setup] ...

  9. Inno Setup入门 (软件打包工具)学习笔记 (26课全)

    [] : 里面的就是 段 每个段里面的是属性 AppId : 软件的APPID尽量是唯一的,随机生成,尽量不跟其他软件的ID冲突,这个ID安装之后是要写进系统的注册表的,系统在管理和卸载你的软件的时候 ...

最新文章

  1. C语言结构体指针与结构体变量作形参的区别
  2. Okhttp、Volley和Gson的简单介绍和配合使用
  3. windbg工具安装配置及dump抓取
  4. hashCode和identityHashCode的区别你知道吗?
  5. nodejs+php+aes加密解密,php,crypto_php与nodejs的加密数据互通,php,crypto,node.js - phpStudy...
  6. oracle自定义函数获取省份,Oracle 自定义函数Function
  7. k8s集群部署二(自签TLS证书)
  8. 计算机应用基础说课稿的模板,计算机应用基础说课稿模板.doc
  9. win7升级Powershell到5.1(for flutter)
  10. 强网杯 2018 core ROP做法
  11. 逃离or逃避:过年后,你还回不回大城市?
  12. WIN10下装Ubuntu 18.04双系统
  13. DTOJ 2746. 皇后游戏(game)
  14. 计算机毕业设计Android网约车拼车打车叫车系统APP
  15. linux内核Kmalloc - GFP_ATOMIC - GFP_KERNEL - GFP_USER
  16. 如何排查JVM内存占用过高
  17. AJAX之父 Jesse James Garrett的用户体验要素
  18. 计算细长悬臂梁变形,慎用绑定
  19. 使用vye配置路由代码
  20. atmega168p与328p_atmega328p中文手册

热门文章

  1. 6S-7PIOS14~14.7.1密码界面越狱教程
  2. unicode编码范围:
  3. H3C防火墙端口开启二层模式,网络不通的解决方法
  4. 论文参考文献类型代码及书写格式
  5. Snapchat正挑战Facebook统治地位 激战短消息
  6. 2012淘宝关键字优化淘宝关键字SEO优化助手|淘宝关键字SEO优化
  7. gitlab拉取项目报128 fatal: unable to access ‘xxx.git/‘
  8. php打开工具,php文件用什么软件打开
  9. php mssql 存储过程 输入参数,MSSQL_SQL Server存储过程中使用表值作为输入参数示例,在2008之前如果我们想要将表作 - phpStudy...
  10. PostgreSQL PRIVILEGES(权限)