理解Windows注册表

理解Windows注册表

注意

  • 完之前先备份reg

前言

  • 在Windows 3.x之前, Windows都是使用.ini文件来保存配置信息的, 但是.ini文件的大小最大只能为64KB, 为了突破这个限制, 在Windows 3.x中使用了注册表, 在注册表中所有的配置都是二进制的, 大大节约了空间, 同时使用注册表没有大小上的限制, 但是为了兼容以前的版本, 在Windows XP中保存了Boot.ini, Win.ini, System.ini, Boot.ini类似于Linux中的grub
  • .ini文件中的信息与注册表中的信息有一部分是重复的, 这样设计的原因是为了访问方便
  • 注册表存放的位置在C:WindowsSystem32config中, 里面的文件都是二进制文件, 当前没有扩展名的文件就是当前系统正在使用的配置, 使用Copy-Item -Path -Destination -Recurse进行备份

注册表上的五个根键

  • HKEY_CURRENT_USER

    • 保存着当前用户的信息
  • HKEY_USERS

    • 包含了HKEY_CURRENT_USER键
    • 下面的.DEFAULT中的保存的就是当前用户信息
  • HKEY_CURRENT_CONFIG

  • HKEY_LOCAL_MACHINE

    • 保存着系统和计算机的信息
    • 常用路径
      • HKEY_LOCAL_MACHINESOFTWARECompanyName -> Company是软件开发公司的名称, 最重要的就是Microsoft

      • HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersion

      • HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl

      • HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer

  • HKEY_CLASSES_ROOT

    • 关于文件类型与应用程序的联系
    • 常用路径
      • HKEY_CLASSES_ROOT.cShellNewFileName
        • .c表示已.c为扩展名的文件, ShellNew是一个键, 如果没有就创建一个, 在里面添加一个FileName值(或者NullFile, 这样就不需要填写值了), 类型为REG_SZ, 里面写让模板文件路径, 注销计算机, 在右键New中就会发现多出了新建这种类型文件的选项, 实现此功能重要的就是ShellNew -> ShellNew,鼠标右键菜单的订制技巧,加装了应用软件之后,鼠标器右键点桌面取“新建”时其弹出菜单有时会增加该软件的快速启动选项

配置

  • 对Windows的配置一般通过控制面板就可以, 但是如果有配置的范围更大, 需要使用右键管理计算机
    • 在这里可以设置任务计划
    • 用户

关于账户

  • Windows中所有的代码都是在一个特定的用户下执行的, 账户就是一个代码执行的上下文, 那些不需要用户登录的service也是在一个名为SYSTEM账户的上下文中运行的
  • 在Windows中最大的权限是Administrator和SYSTEM, 其中SYSTEM其实要比Administrator更大, 但是Administrator可以通过一些方式借助SYSTEM的身份执行代码
原文地址:https://www.cnblogs.com/megachen/p/10199310.html