对面小哥在win下删除一个程序时,直接删除了程序的整个安装目录,但打开控制面板的卸载程序,依旧能看到这个程序的名字,这洁癖可不能忍。
最终的解决方式是,通过搜索关键词,删除掉注册列表里所有跟这个程序相关的项目,重启后卸载程序里才消失不见。
但后期搜索,我发现即使这样做,也并不代表电脑就回到了安装软件前的状态,或者说大概率不太可能回滚到最初的状态了。
因为理论上,一个程序从安装、运行到卸载的整个过程中,在赋予它的权限下,是有能力肆意修改系统里任何它能影响的地方,甚至在正常卸载后也可能不去恢复它带来的改动,这全凭开发者的自我道德约束。
那么反向思考一下,安装一个程序,有可能会给系统添加一些什么内容呢?通过搜索,,发现会有很多不可逆的修改,此处暂不统计,正规程序大致会添加以下项目:
安装目录
- Program Files(x86)或Program Files或自定义文件夹,用来存放程序及其自身卸载程序;
- Program Files\Common Files文件夹,用来存放同一公司不同程序的共用库文件;
- ProgramData文件夹,用来存放程序的相关配置文件;,很多程序会在这个地方存放它的配置相关的信息;
- windows\system32\drivers文件夹,用来存放一些软件驱动;
- 个人文档及内AppData文件夹,用来存放一些个人配置和个人信息;
- ProgramData\Microsoft\Windows\Start Menu\Programs文件夹,用来存放开始菜单内的程序快捷方式。
注册列表
查看方式,运行:regedit
- HKEY_CURRENT_USER\Software,包含程序配置文件;
- HKEY_LOCAL_MACHINE\SOFTWARE,包含程序配置文件。
补充:
HKEY_CLASSES_ROOT:启动应用程序所需的全部信息,包含扩展名、驱动、文件关联、编号、图标等;
HKEY_CURRENT_USER:当前用户的配置信息,包含环境变量、程序、桌面配置等;
HKEY_LOCAL_MACHINE:本地计算机系统信息,包含硬件和系统信息、安全数据、程序设置等;
HKEY_USERS:当前用户的使用配置,包含当前用户图标、激活程序组、开始菜单等;
HKEY_CURRENT_CONFIG:本地计算机硬件配置,由HKEY_LOCAL_MACHINE映射而来。
服务
查看方式,运行:services.msc
卸载方法:
1.输入cmd打开命令提示符,此时抬头为windows\system32>;
2.键入’sc delete 服务名’,刷新服务即可。
启动项
查看方式,打开任务管理器,点击启动。
可能存在的文件夹:
‘C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp’
‘%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup’
可能存在的注册列表:
‘HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run’
‘HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run’
dll文件
dll是动态链接库,文件包含着多个程序共同使用的代码和数据的库。之前装一些冷门程序时经常会遇到缺少XXX.dll的错误信息,就是少了这个动态链接库的原因,在此一并记录安装和卸载方法。
查询正在运行的哪些程序调用了哪些dll库的方法:
- 以管理员权限启动命令提示符
- 键入’tasklist /m>D:\listdll.txt’
- 打开D盘刚刚生成的listdll.txt文件,列举了dll调用情况。
dll安装方法一:
- 找到.dll文件,将其放入’C:\Windows\System32’文件夹内;
- 打开运行,键入’regsvr32 库文件名’,成功与否都会有提示。
dll安装方法二:
- 找到.dll文件,将其放入任意文件夹内;
- 在该文件夹内,右击选择在此处打开命令窗口;
- 命令提示符中键入’regsvr32 /s 库文件名;
dll卸载方法:
- 找到存放.dll文件的文件夹,防止出错,备份.dll文件;
- 在该文件夹内,右击选择在此处打开命令窗口;
- 命令提示符中键入’regsvr32 /u 库文件名;
- 删除.dll文件。
这只是正规程序可能会添加的文件,要是碰到一些无良开发者,指不定在你的系统某些位置会悄悄塞些什么文件,而且程序的一些修改键值或者配置的操作是属于不可逆的,碰到这种,就毫无办法。
查到一种称为UWP的程序,该类程序需要Microsoft Store审核通过才能上架应用商店,权限后台都会有一定的限制,安装卸载更为方便。
UWP即Windows 10中的Universal Windows Platform简称。即Windows通用应用平台,在Windows 10 Mobile/Surface(Windows平板电脑)/PC/Xbox/HoloLens等平台上运行,uwp不同于传统pc上的exe应用,也跟只适用于手机端的app有本质区别。它并不是为某一个终端而设>计,而是可以在所有Windows10设备上运行。