Windows 的软件卸载是纯凭良心的吗?

2017-08-05 10:34:26 +08:00
 nikoo
在 WIN10 下,如果开发者在卸载功能中不卸载某系统服务,或启动项,那么是不是可以随意把程序永久驻留在用户系统?

刚想同步一个配置文件,在我刚买的 SurfacePro 上装了 Dropbox,结果发现并不好用,卸载后 Dropbox 仍残留在程序列表,双击后说软件有问题问我是否从列表移除,移除后发现系统进程 DbxScv 仍然跑的欢,强制杀死该进程,并删除该文件(在 C:\Windows\System32\ 目录下),重启后发现 Dropbox Update 进程,还两个一起跑,杀掉进程,删除残留的 Dropbox 目录,发现在 C:\Windows\Tasks 仍然残留两个 Dropbox 的更新任务,此时我还没检查 msconfig 里 Dropbox 的启动项和注册表残留,我感觉是真清不干净了。。。

因为是新买的 Surface 新的系统,实在是有点洁癖,于是开始系统恢复。。。

系统恢复后,之前卸载了的 office 365 试用版又回来了,可以理解,继续卸载,结果发现卸载不了!出现错误信息 Error Code:30015-4(1006),一搜发现根本没有有效解决方案,微软甚至为卸载 Office 提供了一个专门的页面和一个专门的卸载工具 https://support.office.com/en-us/article/Uninstall-Office-from-a-PC-9dd49b83-264a-477a-8fcc-2fdf5dbf61d8 只得下载并执行该卸载工具,虽然最后蹦出未解决的问题信息,但还总算是把 Office 给卸了。。。


Windows 的问题是,一旦安装某软件,该软件即在系统里四处开花,重要的系统目录下(例如 C:\Windows\System32\)随意增加该软件的执行程序,随意在系统服务中增加任意多的服务,随意在启动项里增加执行程序,而卸载功能形同虚设,卸载出错、失败屡见不鲜。

真的是喜欢 iOS 的软件机制
不太了解,Mac 系统是如何的呢?假设是将应用拖入 application 的方式安装后,再将该应用移动到垃圾箱,可能会存在残留吗?

-------------
PS:Dropbox 无法正常卸载我相信是技术问题导致而非有意而为之
6669 次点击
所在节点    问与答
59 条回复
ysc3839
2017-08-05 19:47:35 +08:00
是这样的。不过这不能怪系统,系统没办法控制安装程序和卸载程序干了啥。三大平台上,那些要管理员权限安装的程序都有这个问题,macOS 甚至没有提供卸载 pkg 的方法,还得靠第三方软件卸载。
macOS 的大部分程序我称作“半绿色”程序,这些程序可以做到删除=卸载,但是会残留程序的配置文件。Windows 也有这样的程序,只不过没 macOS 那么多罢了。
至于 iOS 这种移动操作系统,跟传统的 PC 操作系统区别很大的,PC 系统更开放,而移动系统更封闭。移动操作系统会专门分一块空间给 app 存放数据,每个 app 独立,所以可以做到完全删除。Windows 10 UWP 应用也是类似这样。
fline
2017-08-05 21:02:27 +08:00
洁癖?这个世界拥有洁癖最好的方法,是遮住自己的眼睛。
hjc4869
2017-08-05 21:05:44 +08:00
@honeycomb Windows Store 上架的桌面 app 完整性级别是 medium,实际上没有沙盒。(用户还可以手动以管理员权限运行)
系统会在 API 层把所有文件 /注册表操作都重定向到 app 自己的 data 目录里。
ryd994
2017-08-05 22:46:42 +08:00
所以就算我用 Linux,非官方源的也会全部进 Docker
DingSoung
2017-08-05 22:52:48 +08:00
iOS 也有很多地方,如果滥用 也会留下很多垃圾的
典型的就是 iCloud(很多科学软件也在用吧), 还有钥匙串,证书,还有一些全局的属性配置

不过即便如此,iOS 的严格限制,相比其他的,包括 macOS, 好太多了
iOS >> macOS >> Android > Linux >> Windows
ztxgeol
2017-08-05 22:54:15 +08:00
@nikoo mac app store 装的 app 卸载之后照样残留,以前装过锤子的某款 transfer。。
ysc3839
2017-08-05 23:27:52 +08:00
@dingsoung Android 再怎么说都没有 macOS 开放,macOS 可是提供 root 权限的。
belleveinvis
2017-08-05 23:30:38 +08:00
@Mac 谁叫 20 年前硬盘太小
DingSoung
2017-08-05 23:53:44 +08:00
@ysc3839 Android 现在很多也 root 吧, 即便不 root,国内那么多哪一个不是把 android 改的乱糟糟,开发也不规矩,用起来烦心
LancerComet
2017-08-05 23:58:01 +08:00
Revo Uninstaller 卸载
能用 UWP 就用 UWP
或者找点绿色软件
ysc3839
2017-08-06 00:42:47 +08:00
@dingsoung 但是 Android 不是自带 root 的。就举一个例子,在 macOS 有 TeamViewer 这样的软件可以远程控制电脑,而 Android 下 TeamViewer 根本无法实现操控手机。
JamesR
2017-08-06 01:01:31 +08:00
绝大部分非流氓的软件,都能基本卸载干净。
正常开发者没人会蛋疼搞个常驻,因为开发者自己还要做测试呢,卸不干净干毛。
实在不行,可以定期重装系统啊,不就行了。
cxbig
2017-08-06 01:28:14 +08:00
哪个操作系统都无所谓的,卸载残留问题多少都有。还是看开发者的良心。
MacOS 里面删 App,简单的只是让你把 App 从 /Applications 里删掉,但是有很多 cfg、log 分散在:/Library, ~/Library, /private, /etc, /usr/lib 等等地方。
ysc3839
2017-08-06 02:13:43 +08:00
@cxbig macOS 应该只会残留在当前用户的文件夹内吧?系统文件夹要 root 权限才能写入的。
340244120
2017-08-06 03:17:20 +08:00
@pq 不用下那平台 直接进 apps 频道里找软件就好了
cxbig
2017-08-06 04:30:13 +08:00
@ysc3839 看情况的,不同的用户类型会放不同的地方。
比方说 /Applications 和~/Applications、/Library 和~/Library
RqPS6rhmP3Nyn3Tm
2017-08-06 04:57:08 +08:00
Mac 卸载才是凭良心,如何卸掉命令行工具的 pkg 包?请开始你的表演
ialva
2017-08-06 09:52:12 +08:00
当工具而已,能发现就清理,没看到就算了。
Khlieb
2017-08-06 23:25:15 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/380589

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX