关于软件卸载方面的日记

        今天清理d盘内容时误删了qq的一个配置文件,无奈之下只能卸了重装。但是卸载完以后,却无法在原来的文件夹下重新安装(报错:当前目录下已安装了QQ正式版,无法再安装QQ体验版)。后来再网上查了一下,有人说可能是因为注册表里的配置信息没删干净。也由此产生了一些疑问

1. 注册表相关疑问

这些问题我都是问的ai,下述答案也只是我对ai回复的简单总结,可能会有说的不对的地方。

  1. 为什么这种软件自带的卸载程序也无法彻底删除注册表里的内容?按理说安装软件时保存一下注册表的写入路径,卸载软件时根据这些路径把该软件的相关配置信息删了不就行了?
    在这里插入图片描述
    答:一方面这样做会加大开发难度;另一方面,操作注册表相关的内容一般都需要较高的权限,如果直接给予安装的软件管理员权限,就会出现安全隐患(例如:非法软件可能会利用这些权限盗取个人信息)。
  2. 不提前给予管理权限,等删除注册表信息时再临时赋予它们管理权限不就好了(设置一个弹窗问用户是否可以临时给予软件管理员权限)?还是担心的话,可不可以配合windows系统研发一个检测系统(一旦用户点击确定临时赋予管理员权限,就会触发windows的检测机制,只有检测到是正版软件才会真正赋予它管理员权限)?
    答:软件用久了以后,配置信息会越来越多。随着下载软件数量的增多,也可能存在两个软件所需依赖相同的情况。如果a软件直接把公共依赖删除导致b软件也不能正常运行,就可能会出现一些不必要的纠纷。
  3. a软件利用管理员权限尽可能多得删除注册表里的配置信息,不确定能不能删的就把当时注册表里的存储路径写到一个记事本里,让用户自己斟酌,这样不是也可以吗?
    答:不同的系统注册表写入路径也可能不同,上述构想不太容易实现。
  4. 既然linux可以借助apt、yum等包管理工具尽可能更彻底地移除软件及其相关组件,为什么windows不可以开发一个类似linux包管理工具的组件将它集成到控制面板的软件卸载模块,从而更方便也更彻底的卸载软件?
    答:① 兼容性:许多windows应用程序是通过各种不同的安装程序进行安装的,这些安装程序可能会在系统中创建或修改许多不同的注册表和文件。因此,提供一个统一的包管理工具可能会对兼容性和不同安装程序的行为产生挑战。② 用户体验:Windows的用户界面设计倾向于简化用户操作,因此控制面板中的卸载功能旨在提供一个简单易用的方式来移除程序,而不必深入管理所有相关的依赖和配置。这种设计可以降低普通用户的操作复杂性,但可能导致残留问题。③ 应用程序多样性:在Windows上,有许多应用程序的安装和卸载方式不统一。开发者可能不会遵循统一的标准或最佳实践,这使得创建一个能处理所有这些情况的通用工具变得困难。④ 进程和系统管理:Windows的系统和软件管理机制通常是基于分散的方式进行的,每个应用程序可能会有自己的安装和卸载逻辑,这种设计减少了需要集中管理的软件和系统组件的数量。相比之下,Linux的包管理系统提供了更集中和一致的方式来处理软件安装和卸载,支持依赖管理和配置清理。

2. 如何彻底删除卸载软件时残余的.dll文件

把该文件后缀名改成 .txt,然后重启电脑。重启之后不要打开那个文件夹,直接删除。
这是我在知乎上看到的一个帖子上写的解决方案,亲测有效

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软件卸载的测试用例可以包括以下几个方面: 1. 正常卸载测试用例:测试软件在正常情况下能够成功卸载,包括以下测试点: - 确保卸载过程中没有错误提示或异常情况。 - 验证卸载后,软件在系统中完全被删除,不会留下任何残留文件或注册表项。 - 确保卸载后,软件相关的服务、进程和驱动程序都被正确停止和删除。 2. 异常卸载测试用例:测试软件在异常情况下的卸载处理能力,包括以下测试点: - 测试在卸载过程中,如果用户意外中断卸载操作,软件是否能够正确处理中断情况,不会导致系统崩溃或数据丢失。 - 测试在卸载过程中,如果软件依赖的其他组件或文件被删除或损坏,软件是否能够正确处理这些异常情况,不会导致卸载失败或系统不稳定。 - 测试在卸载过程中,如果软件正在执行某些操作(如文件复制、数据库操作等),是否能够正确处理这些操作的中断或异常情况。 3. 兼容性卸载测试用例:测试软件在不同操作系统、不同硬件平台或不同软件环境下的卸载兼容性,包括以下测试点: - 测试软件在不同操作系统版本(如Windows、Linux、Mac等)下的卸载是否正常。 - 测试软件在不同硬件平台(如x86、x64、ARM等)下的卸载是否正常。 - 测试软件在与其他软件或驱动程序共存的情况下的卸载是否正常,不会导致其他软件或驱动程序的异常或损坏。 4. 性能卸载测试用例:测试软件在卸载过程中的性能表现,包括以下测试点: - 测试软件的卸载速度,包括卸载过程中的文件删除、注册表清理等操作的耗时。 - 测试软件的卸载过程对系统资源的占用情况,包括CPU、内存、磁盘等资源的使用情况。 5. 安全卸载测试用例:测试软件在卸载过程中的安全性,包括以下测试点: - 测试软件在卸载过程中是否会删除用户的个人数据或敏感信息。 - 测试软件在卸载后是否会留下任何安全隐患,如未删除的配置文件、密码文件等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值