Inno Setup:如何处理[UninstallDelete]部分的进度条?

2024-02-08

我使用 Inno Setup 为我的应用程序制作安装程序。当用户卸载应用程序时,我想删除其中的自定义文件夹Program Data文件夹,我的文件夹很大(大约15 GB),所以我使用[UninstallDelete]删除此文件夹的部分:

[UninstallDelete]
Type: filesandordirs; Name: "{commonappdata}\testFolder"

但是当 Inno Setup 到达[UninstallDelete]部分,进度条显示在20%,并在这个位置停了很长时间,然后“跳”到100%。
那么如何让卸载应用时进度条稳步增长呢?
Thanks!


我认为这真的不可能。

在不显着延长操作时间的情况下,无法预测删除将持续多长时间。你必须提前统计文件的数量,然后将它们一一删除,计算进度。但计算文件数量可能也需要相当长的时间。所以它不会对你有太大帮助,实际上可能会让事情变得更糟。而且在计算时安装也会卡住(你根本无法预测需要多长时间)。


尝试删除(而不是回收)Windows 文件资源管理器中的文件夹。并检查该操作持续了多长时间“计算” phase.

在我的测试中,只花了1/3的删除时间。


您可以显示一个不确定/选取框进度条(即像上面的资源管理器那样),而不是尝试显示真正的进度。也许还可以显示已删除文件的计数,以便用户看到某些事情正在进展。


我其实并不认为,你需要让卸载用户体验那么好。只显示消息怎么样:

这可能需要几分钟...


您的后续问题:
Inno setup - 卸载时不显示进度条 https://stackoverflow.com/q/56729989/850848

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Inno Setup:如何处理[UninstallDelete]部分的进度条? 的相关文章

  • Inno Setup:如何根据代码更改语言文件

    我使用自己的语言文件 isl 而不是使用 Inno Setup 的默认语言文件 它允许我自定义一些消息 但现在 我想要每种语言文件有两个版本 一个用于首次安装 一个用于更新 但是 是否可以从代码中选择一个文件 如果是 该怎么做 也许有一些比
  • Inno Setup 提示用户输入文件夹并存储值

    我有以下需求 Run run robocopy exe source dest OLD source contents options Where source必须由目标计算机上的用户指定 这可以根据物理平台进行更改 目的地将与用户定义的源
  • 在 Inno Setup 中实现脚本常量时出现“预期标识符”或“原型无效”

    因此 鉴于此功能 我在GetRoot ROOTPage Values 0 线 我希望它告诉我ROOTPage没有定义 const DefaultRoot C IAmGRoot Var ROOTPage TInputQueryWizardPa
  • “此应用程序只能在应用程序容器的上下文中运行。” - Visual Studio 2015 开发新手

    我有点绝望了 我几个小时以来一直在尝试解决以下问题 我开发了一个应用程序 现在尝试使用 Visual Studio 2015 的安装向导扩展来安装 一切都在构建或 没有错误 但是当我打开应用程序时 它突出显示它只能在应用程序容器的上下文中打
  • Mac 10.8.3 上的 fltk 安装

    我正在挣扎fltk在我的 Mac 上安装 我想在Xcode 4 下载文件并解压缩后 尝试按照说明操作 2 3 Configuring FLTK Stay in your FLTK source code directory Type aut
  • 会话“app”:安装 APK 时出错

    尝试按照说明在真实设备上安装应用程序 http developer android com tools device html http developer android com tools device html 最后 Android
  • 如何在 Windows 上的 Python 2.7 上安装 Tensorflow?

    我尝试通过 pip 安装 TensorFlow pip install tensorflow 但是得到这个错误 找不到满足tensorflow要求的版本 来自版本 这个问题有解决办法吗 我还是想通过pip安装 如果您只因为 Keras 而需
  • 以编程方式更新 ClickOnce 应用程序的部署清单会导致缺少 4.0 中所需的 <兼容框架> 元素

    我正在致力于自动化 NET 4 0 ClickOnce WPF 应用程序的安装程序 该应用程序需要在应用程序配置文件 我经历了寻找必须遵循的具体步骤的棘手过程Mage exe http msdn microsoft com en us li
  • 如何使用 setuptools Windows 安装程序在开始菜单中创建快捷方式

    我想为我的 Python Windows 安装程序包创建开始菜单或桌面快捷方式 我正在尝试遵循https docs python org 3 4 distutils builtdist html the post 安装脚本 https do
  • 如何在anaconda python 3.6上安装tensorflow

    我使用 anaconda 包安装了新版本的 python 3 6 但是我无法安装张量流 总是收到这样的错误 tensorflow gpu 1 0 0rc2 cp35 cp35m win amd64 whl 在此平台上不受支持 如何在 ana
  • 如何从 Windows 7 PC 上完全卸载 Python 2.7

    从这里安装了Python 2 7 https www python org downloads release python 279 https www python org downloads release python 279 然后我
  • Inno Setup 代码部分创建隐藏文件

    我正在处理 Inno Setup 项目 该项目正在使用SaveStringToFile函数在 Code 部分 我想将此文件设置为隐藏系统文件 但我无法找到有关如何实现此操作的信息 有任何想法吗 Inno Setup Pascal Scrip
  • 在 Inno Setup 中单击“下一步”按钮时验证自定义页面上的数据

    我已经设法获得一个基本脚本来显示向导 使用CreateInputFilePage 供用户识别我用来更新 XML 文件中某些设置的文件位置 但是 我想对所选文件的输入进行一些基本检查 而不是简单地接受用户提供的任何内容 例如 如果用户在内容无
  • 如何生成Mac应用程序的安装包?

    如何为 OS X 二进制文件以及一些配置和脚本文件创建单个安装程序包 最终文件夹应如下所示 任何帮助 将不胜感激 谢谢 如果您希望将各种东西放置在不同的位置 安装程序在这里 文档在那里 支持文件在这里等等 它们也非常适合提供安装体验的可配置
  • 使用 NVM 安装多个版本的 node.js (Ubuntu)

    如何使用 Ubuntu 在 Ubuntu 中安装多个版本的 Node jsNVM https github com creationix nvm 先验知识 如何使用终端 例如 您可以使用gnome terminal 安装依赖项 sudo a
  • Node.JS async.parallel 不会等到所有任务完成

    我在用异步并行 https github com caolan async并行运行两个函数 这些函数请求 RSS 源 然后 RSS 提要被解析并添加到我的网页中 但由于某种原因async parallel运行回调方法而不等待两个函数完成 文
  • Wix - 自定义安装目录

    我使用的是 Wix 3 x 用户应该能够选择目标目录 我的Setup wxs目前是这样的 http pastebin com uH1EjbDQ http pastebin com uH1EjbDQ 询问用户自定义目标目录的最简单方法是什么
  • Inno Setup - 如何在安装过程中读取 INF 文件

    我需要知道如何在安装过程中从 INF 文件 inf 读取值 我希望安装程序检查我要更新的程序的版本 该程序版本不存储在注册表或任何其他文件中 仅存储在 inf 文件中 然后必须从中获取版本 我得到了你的答案 Trama 我无法使用 DLL
  • Inc 函数 Inno Setup

    这可能非常简单 但是当我尝试编译包含以下内容的程序时 Inc Count 在 Inno Setup 中我不断得到 未知标识符 Inc 我相信这就是在 Pascal 中递增整数的方式 并且对如何继续这里感到困惑 我正在使用 Inno Setu
  • Android 设备上的静默安装

    我已经接受了一段时间了 在 Android 上静默安装应用程序是不可能的 也就是说 让程序安装捆绑为 APK 的应用程序 而不提供标准操作系统安装提示并完成应用程序安装程序活动 但现在我已经拿到了 Appbrain 快速网络安装程序的副本

随机推荐

  • 变量前的美元符号

    我有这个示例代码 用于从现有数据框 my data 创建新数据框 new data new data NULL n 10 this number correspond to the number of rows in my data con
  • 我怎样才能在我的桌子上有一个圆形边框和边框折叠:折叠? [复制]

    这个问题在这里已经有答案了 我有以下内容 table style border 1px solid 999 thead tr style background color red th Weekday th th Date th th Ma
  • 如何将struct从合约A传递到合约B?最佳实践

    我发现这样 当创建一个具有结构的通用接口时 然后合约A和B继承该具有结构的接口 但我想知道是否还有其他方法 是否存在可以更新具有结构的合约的情况 pragma experimental ABIEncoderV2 pragma solidit
  • 确定隐马尔可夫模型中隐藏状态的数量

    我正在学习隐马尔可夫模型 用于对 t 个图像帧序列中的运动进行分类 假设每个帧有 m 个维度的特征 然后我将它聚集成一个符号 用于可观察的符号 我为 k 类创建 k 个不同的 HMM 模型 那么 如何确定每个模型的隐藏状态数量以优化预测 顺
  • 密码保护 iPhone 应用程序

    我正在启动一个新应用程序 我想知道如何需要密码才能打开它 我正在考虑一个UIActionSheet在应用程序中didFinishLaunchingWithOptions应用程序委托实现文件的方法 但我不确定如何去做 不过我会继续努力 Fou
  • AngularFire $add 操作导致浏览器冻结

    我正在使用 angularjs 学习 Firebase 从本教程https thinkster io tutorials angularfire realtime slack clone creating the channels side
  • 在 Java 中对双精度值进行哈希处理

    我想知道如何在 Java 中对 double 进行哈希处理 我已经散列了其他原始数据和对象 我想我可以使用 hashcode 方法吗 从我所看到的来看 这看起来相当复杂 我遇到了一些关于创造种子的事情 我想知道关于如何解决这个问题的任何想法
  • 制作通用数组是不好的做法吗?替代方案是什么?

    我在学校用 C 编码已经三年了 两天前我开始用 Java 编码 我的问题是 制作通用数组是不好的做法吗 另一种选择是什么 我很困惑 除了做一些奇怪的事情 例如这个例子 之外 我似乎无法制作通用数组 Class implementing th
  • 对象中对象中的 JavaScript `this`?

    抱歉 帖子标题模糊 我无法为这篇文章制定正确的英文名称 例如我有这样一个对象 var APP a 1 b function return this a 这样 如果我打电话console log APP b than this将引用 APP
  • 如何重置 Kafka 偏移量以匹配尾部位置?

    我们将 Storm 与 Kafka 和 ZooKeeper 结合使用 我们遇到过这样的情况 我们必须删除一些主题并用不同的名称重新创建它们 除了现在读取新主题名称之外 我们的 Kafka spouts 保持不变 但是现在 当尝试从新主题读取
  • 在 fluidd 中解析 nginx 入口日志

    我想在 Kubernetes 中使用 Fluentd 解析入口 nginx 日志 这在 Logstash 中相当简单 但我对 fluidd 语法感到困惑 现在我有以下规则
  • Greenlet 运行时错误和在 docker 中部署的应用程序不断启动所有工作人员

    RuntimeWarning greenlet greenlet 大小已更改 可能表示二进制 不兼容 预期来自 C 标头的 144 从 PyObject 得到的为 152 所有的工人都被解雇了 2020 09 28T14 09 41 864
  • 使用 spring 3.x 配置速度工具

    我对弹簧和速度都很陌生 我想使用 spring 3 x 配置速度工具 但我找不到相关的好文章 速度模板未显示会话变量 我从 Spring 控制器设置 至于在spring 3 x中配置Velocity工具 首先将tools xml文件放在有用
  • Java 新手,出现错误“int 无法取消引用”

    我是 java 新手 我已经从事这个练习有一段时间了 但不断收到错误 int 无法取消引用 我看到了几个类似的问题 但仍然无法弄清楚我自己的情况 这是完整的代码 package inclass class OneInt int n OneI
  • 如何在角度2中等待函数完成执行?

    下面是我的代码 我想要login and authenticated 等待的函数getProfile 函数来完成其执行 我尝试了多种方法 例如承诺等 但无法实现 请建议我解决方案 import Injectable from angular
  • 从服务器视频链接生成缩略图 android

    在android中是否可以获取某人的任何类型视频的缩略图 该人仅具有该视频的url链接 并且视频可以来自任何来源 例如youtube或任何来源 请告诉我是否可能 这是我的我试图通过java代码获取youtube视频的缩略图 public c
  • jQuery 延迟和承诺 - .then() 与 .done()

    我一直在阅读有关 jQuery deferreds 和 Promise 的内容 但我看不出使用之间的区别 then done 成功回调 我知道埃里克 海因兹 http www erichynds com jquery using defer
  • java.lang.NoSuchFieldError:android.support.v7.appcompat

    我将我的支持库从 r20 更新到了 r21 现在当我运行我的应用程序时 我收到此错误super onCreate我的主要活动 java lang NoSuchFieldError android support v7 appcompat R
  • iOS:将视图转换为圆柱形

    借助 Quartz 2D 我们可以改变对事物的看法x yand z axis 在某些情况下 我们甚至可以通过更改矩阵的值使它们看起来像 3D 我想知道是否可以将视图转换为圆柱体形状 如下图所示 请忽略气缸的顶部 我更好奇是否有可能扭曲UIV
  • Inno Setup:如何处理[UninstallDelete]部分的进度条?

    我使用 Inno Setup 为我的应用程序制作安装程序 当用户卸载应用程序时 我想删除其中的自定义文件夹Program Data文件夹 我的文件夹很大 大约15 GB 所以我使用 UninstallDelete 删除此文件夹的部分 Uni