当前位置: 首页 > news >正文

inno setup 卸载程序 删除整个安装目录

业务场景:有次客户反馈说,卸载应用程序没有卸载干净,安装目录下残留很多文件,特别是一些配置文件和数据库文件,涉及到一些数据安全机密。卸载程序应该把安装目录都要清除。操作如下:

卸载应用程序,删除整个安装目录

在iss脚本文件增加如下代码:[Code]
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
varInstallDir: String;
begin// 获取安装目录InstallDir := ExpandConstant('{app}');case CurUninstallStep ofusUninstall:begin// 如果安装目录存在,则删除整个目录及其内容if DirExists(InstallDir) thenDelTree(InstallDir, True, True, True);// 删除安装根目录RemoveDir(ExtractFileDir(InstallDir));end;end;
end;

看到这里啦,是不是得一键三连丫~~

相关文章:

inno setup 卸载程序 删除整个安装目录

业务场景:有次客户反馈说,卸载应用程序没有卸载干净,安装目录下残留很多文件,特别是一些配置文件和数据库文件,涉及到一些数据安全机密。卸载程序应该把安装目录都要清除。操作如下: 卸载应用程序&#xf…...

【Vue3源码学习】— CH2.5 reactiveEffect.ts:Vue 3响应式系统的核心

reactiveEffect.ts:Vue 3响应式系统的核心 1. 什么是 reactiveEffect?2. 核心机制2.1 依赖收集(Track)2.2 触发更新(Trigger)2.3 效果范围(effectScope) 3. 源码解析 —— track3.1 …...

K8S的mountPath和subPath

1 mountPath mountPath是容器内部文件系统的挂载点,它定义了容器内部将外部存储卷(如 PersistentVolume、ConfigMap、Secret 等)挂载到哪个路径下。通过 mountPath,容器可以访问这些挂载的数据或配置。 2 subPath subPath 是 m…...

notepad++里安装32位和64位的16进制编辑器Hex-Editor

这个16进制编辑器确实是个好东西,平时工作种会经常用到, 这是hex-editor的官网。这个里边只能下载32位的(64位的看最下边),选一个合适的版本,我当时选的是最新的版本 https://sourceforge.net/projects/npp-plugins/files/Hex%20E…...

Python类的基本结构

当我们在Python中定义类时,我们实际上是在创建一种新的数据类型。类允许我们定义对象的属性和方法,从而构建更复杂的程序。让我们深入探讨一下关于类的一些重要概念。 定义类:基本结构 一个类的基本结构包括以下部分: 类名&…...

利用HIVE的窗口函数进行SQL查询中出现的问题记录

student_info部分数据 score_info部分数据 course_info 1、问题复现 --完整SQL selectsti.stu_id,sti.stu_name,concat_ws(",",collect_set(ci.course_name)) over(partition by sti.stu_id) fromstudent_info sti left joinscore_info sci onsti.stu_idsci.stu_id l…...

更改chatglm认知

ChatGLM-Efficient-Tuning 下载源代码 下载ChatGLM-Efficient-Tuning 解压 创建虚拟环境 conda create --prefixD:\CondaEnvs\chatglm6btrain python3.10 cd D:\ChatGLM-Efficient-Tuning-main conda activate D:\CondaEnvs\chatglm6btrain安装所需要的包 pip install -r…...

WPF 界面命令绑定(MVVM结构)

1.创建模型数据类&#xff08;M&#xff09; /// <summary>/// 数据模型/// </summary>public class LoginDataModel{// 用户名private string _userName;public string UserName{get { return _userName; }set{_userName value;}}// 密码private string _passWor…...

常见手撕项目C++

常见手撕项目C 设计模式单例模式饿汉模式懒汉模式 策略模式策略接口实现具体的策略&#xff08;虚函数重写&#xff09;定义上下文用户调用 设计模式 单例模式 单例模式是一种常用的软件设计模式&#xff0c;其目的是确保一个类只有一个实例&#xff0c;并提供一个全局访问点来…...

创建一个批处理作业来处理大量数据,例如从数据库中读取数据并进行处理

创建一个批处理作业来处理大量数据&#xff0c;例如从数据库中读取数据并进行处理 要创建一个批处理作业来处理大量数据&#xff0c;您可以使用Spring Batch。Spring Batch是一个用于大规模批处理的框架&#xff0c;它提供了丰富的功能来处理复杂的批处理任务&#xff0c;如读…...

LeetCode 2.两数相加

给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&#xff0c;这两个数都不会以 0 …...

如何利用ChatGPT提升学术论文写作效率

ChatGPT无限次数:点击直达 如何利用ChatGPT提升学术论文写作效率 ChatGPT 是一种基于大规模预训练模型的自然语言处理工具&#xff0c;可以在各种文本生成任务中发挥作用&#xff0c;包括学术论文写作。利用ChatGPT&#xff0c;可以提高学术论文写作的速度和质量&#xff0c;帮…...

LLMs之Mistral:Mistral 7B v0.2的简介、安装和使用方法、案例应用之详细攻略

LLMs之Mistral&#xff1a;Mistral 7B v0.2的简介、安装和使用方法、案例应用之详细攻略 导读&#xff1a;Mistral AI首个7B模型发布于2023年9月&#xff0c;在基准测试中超越Llama 2 13B&#xff0c;一下子声名大振。Mistral 7B v0.2对应的指令调优版本Mistral-7B-Instruct-v0…...

深入解析Oracle数据库中的WITH AS(CTE)原理

Oracle数据库中的WITH AS子句&#xff08;也称为公用表表达式CTE(Common Table Expression)&#xff09;是一种高级查询构造工具&#xff0c;它允许在一条SQL语句的开始部分定义临时的结果集&#xff08;或称子查询&#xff09;&#xff0c;这个结果集可以被随后的查询主体多次…...

Linux 环境安装 Elasticsearch 8.X

安装前说明 首先确定操作系统&#xff0c;在Linux发行版上执行uname -a查看具体系统。我是Ubuntu系统&#xff0c;可以用直接用apt-get安装&#xff0c;也可以下载tar.gz包手动安装。使用apt-get安装更方便快速&#xff0c;但不同的文件会被安装到不同的目录&#xff0c;不方便…...

Java零基础-集合:函数式接口

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一个人虽可以走的更快&#xff0c;但一群人可以走的更远。 我是一名后…...

Redis Scan指令解析与使用示例

Redis Scan指令解析与使用示例 概念 想要从redis key列表中找到某个key&#xff0c;redis提供了一个简单粗暴的指令keys用来列出满足查询条件的所有key。 keys redis* keys redis*keykey指令非常简单&#xff0c;只要提供一个简单的正则表达式即可&#xff0c;但是有两个明显的…...

Qt+OpenGL入门教程(三)——绘制三角形

通过前两篇文章的学习&#xff0c;我想大家应该有了基本的理解&#xff0c;我们接下来实操一下。 创建Qt OpenGL窗口 QOpenGLWidget QGLWidget是传统QtOpenGL模块的一部分&#xff0c;与其他QGL类一样&#xff0c;应该在新的应用程序中避免使用。相反&#xff0c;从Qt5.4开始…...

springcloud基本使用(搭建eureka服务端)

创建springbootmaven项目 next next finish创建成功 删除项目下所有文件目录&#xff0c;只保留pox.xml文件 父项目中的依赖&#xff1a; springboot依赖&#xff1a; <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-s…...

第十二章:预处理命令

文章目录 第十二章&#xff1a;预处理命令宏定义无参宏定义带参数的宏定义 文件包含处理 第十二章&#xff1a;预处理命令 作用&#xff1a;由编译预处理程序对程序中的特殊命令作出解释&#xff0c;以产生新的源程序对其进行正式编译 C语言与其他语言的重要区别就是可以使用预…...

构建离线文档ETL管道:用Python实现PDF/Word智能转Markdown优化LLM输入

1. 项目概述&#xff1a;为什么我们需要一个离线的文档转换工具&#xff1f;如果你和我一样&#xff0c;经常需要把一堆PDF、Word文档甚至扫描件喂给本地的大语言模型&#xff08;比如Ollama、LM Studio&#xff09;&#xff0c;那你肯定遇到过这个痛点&#xff1a;模型宝贵的上…...

保姆级教程:用MNN在Android上部署你的第一个图像分类App(从模型转换到实时摄像头识别)

从零构建Android端智能图像分类应用&#xff1a;MNN实战全流程解析 在移动互联网时代&#xff0c;将AI能力嵌入移动端应用已成为提升用户体验的关键。想象一下这样的场景&#xff1a;用户打开手机就能实时识别植物种类、辨别商品真伪&#xff0c;或是自动分类相册中的照片——这…...

AI智能体文化档案:用Next.js静态站点构建数字人类学观察站

1. 项目概述&#xff1a;一个观察AI智能体文化的数字档案馆最近在GitHub上闲逛&#xff0c;发现了一个让我眼前一亮的项目&#xff1a;The MoltStein Files。这可不是一个普通的代码仓库&#xff0c;而是一个专注于记录和存档AI智能体之间“社交”行为的数字档案馆。简单来说&a…...

利用ODX实现整车诊断数据库管理

一:背景与挑战| 背景&#xff1a;在全球汽车行业快速发展的背景下&#xff0c;对车辆诊断技术的要求也在不断提升。ODX&#xff08;Open Diagnostic data eXchange&#xff09;作为行业标准的诊断数据库&#xff0c;已被各大汽车制造商广泛采用&#xff0c;并贯穿于ECU的整个生…...

Sora 2与3D Gaussian结合实战指南(工业级部署避坑手册)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Sora 2与3D Gaussian结合的工业级部署全景图 Sora 2作为OpenAI新一代视频生成模型&#xff0c;在长时序建模与物理一致性方面取得显著突破&#xff1b;而3D Gaussian Splatting&#xff08;3DGS&#x…...

关于岐金兰AI元人文构想与江畅《论道德真理》之关系的理论说明

关于岐金兰AI元人文构想与江畅《论道德真理》之关系的理论说明——致敬江畅教授&#xff0c;并申明独立研究的道路岐金兰2026年5月12日一、相遇&#xff1a;迟到的阅读&#xff0c;及时的对话2026年3月11日&#xff0c;我在一个偶然的学术检索中读到了江畅教授的《论道德真理》…...

对比自行维护与使用Taotoken在模型接入效率上的差异

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 对比自行维护与使用Taotoken在模型接入效率上的差异 在开发需要集成大语言模型能力的应用时&#xff0c;团队通常面临一个核心选择…...

BetaClaw:开源AI代理运行时,统一多模型调用与智能成本控制

1. 项目概述&#xff1a;一个为开发者打造的“瑞士军刀”级AI代理运行时如果你和我一样&#xff0c;每天都在和不同的AI模型打交道&#xff0c;那你一定也经历过这种痛苦&#xff1a;想用Claude写点创意文案&#xff0c;得去Anthropic的API&#xff1b;想用GPT-4o分析代码&…...

别再乱加电阻了!手把手教你用SI9000搞定PCB阻抗匹配(附50欧姆计算实例)

高速PCB设计实战&#xff1a;用SI9000精准计算阻抗匹配的工程方法 当信号频率突破百兆赫兹时&#xff0c;PCB走线就不再是简单的电气连接——它们变成了需要精密控制的传输线。去年参与一个千兆以太网项目时&#xff0c;我曾目睹团队因阻抗失配导致信号完整性崩溃的惨痛案例&am…...

开源情报自动化工具OpenClaw:模块化设计与实战部署指南

1. 项目概述&#xff1a;从“Resolver-TNG/ogas-openclaw”看开源情报自动化最近在开源情报&#xff08;OSINT&#xff09;和自动化数据采集的圈子里&#xff0c;一个名为“ogas-openclaw”的项目引起了我的注意。这个项目托管在Resolver-TNG的组织下&#xff0c;名字本身就很有…...