文件系统管理
参考:
C:\Users\
- .\Local* #
- .\LocalLow* #
- .\Roaming* #
注册表
参考:
注册表前身
其实,注册表也不是一开始就存在于 Windows 上。
在 Windows 95 之前,微软通过一种叫 “ 配置文件 ” 的东西,来实现如今注册表的作用。
这里面存储的,就是一些软件的基本信息。比如说配置一些文件的打开路径在哪里,或者是软件要用哪些字体来读取。
通常通过 ini 格式的文件,配置文件会趁着咱们安装各种软件的时候,把自己丢在系统的各种文件夹里。想修改一些配置的时候,咱们可以直接去这个软件的安装目录里找 ini 文件就行。
看上去挺方便,不过这 ini 文件最大的问题吧,就是太容易修改了,甚至可以简单到直接用记事本给打开。
到时候手一抖改几个字,可能一个软件就打不开了。
比如把一个 5 行的行间距手一抖改成复数,软件当场就寻思我哪见过这个?不当场宕机就不错了。万一改的还是系统配置文件,电脑指不定也得抽两抽。
而且,当年大家用的还都是机械硬盘。。。考虑到 ini 文件分散在系统的各种犄角旮旯,读取起来太麻烦,打开也嫌慢,更不方便维护。 微软后来就一寻思,干脆把这些乱的到处都是的 ini 文件功能给整合了起来。通过一个统一的,系统级别的分层数据库来起到过去 “ 配置文件 ” 做的事情。这个库里面装的呢,就是咱们电脑里哪些花里胡哨,乱七八糟的配置。 举个例子,我们鼠标右键的每次点击,到底会弹出来哪些菜单选项,以及具体要弹的多长。都得让注册表来告诉它才行。 而且吧,比起过去各自为战,互相之间看不对眼的配置文件。注册表还能起到一个系统级别的调度功能,可以把这些软件之间的信息共享给其它软件,。 当有新的软件安装的时候,也会优先把自己能干什么,自己需要什么的消息给写入注册表里。 就像咱们现在能用 WPS 软件来打开 word文档,中间还得靠注册表这个 “传话筒” 来沟通才行。想让系统能弄清楚,我们得把 “ wps 可以打开 word ” 文档这件事情,写到注册表里。 借助当时更为先进的数据库结构,注册表还能够实现多用户配置和多线程读写等功能。别看咱们现在嫌弃注册表长的丑,要知道当年,这可是少有的图形可视化界面。 ## 注册表小解 按 win + R,在对话框里输入 “ regedit ” 来打开注册表编辑器。
### 备份注册表
## 应用示例
### 在鼠标右键菜单上添加内容
打开注册表后,在表上的地址栏里输入这个:HKEY_CLASSES_ROOT\Directory\Background\shell
在 shell 中“添加项”,添加的项名就是右键菜单中的功能名
不过这回还没给它加上功能,直接点击的话会报错。

在 “lichenhao”项下添加 “command”项;修改 command 项中的默认值为想要运行进程的绝对路径

此时右键的 “lichenhao”就可以运行 Python 了。
查看崩溃信息
特别生气!!!!某一天突然发现拖拽文件拖拽到其他文件夹就会导致资源管理器卡死,然后还以为是自己拖错了,然后越来越频繁。
然后疯狂百度
1.打开控制面板
2.再进入安全和维护
3.点击维护查看可靠性历史记录
4.点击关键信息随便个事件进去可以看见因为啥文件导致卡死的。
我是因为wps的某个文件,把wps卸了就好了。
5.如果还没解决的话,可以试试利用Dism修复系统
管理员打开cmd命令行。
直接输入这两条就好了
DISM /Online /Cleanup-image /ScanHealth //这一条指令用来扫描全部系统文件,并扫描计算机中映像文件与官方系统不一致的情况。 DISM /Online /Cleanup-image /RestoreHealth //计算机必须联网,这种命令的好处在于可以在修复时,系统未损坏部分可以继续运行
利用Procmon分析注册表活动
Procmon依赖于一个设备驱动程序,该设备驱动程序是在运行时刻从Procmon的可执行映像文件中提取得到,然后再启动起来的。它第一次执行的时候,要求当前运行它的账户具有Load Driver特权,以及Debug特权;在同一次引导会话中,以后再执行的时候只需要Debug特权就可以了,因为一旦该驱动程序被加载以后,它就会驻留在系统中。
注册表实现了RegNotifyChangeKey函数,应用程序可以利用该函数来请求获得注册表的变化通知。


