|
注册表用来存储系统和应用程序的配置数据。很多系统和应用程序重要的配置信息都存储在注册表中。注册表是一种树形结构数据库,树的每个节点称为键(key),每个键还可以包含若干子键,键可以存储数据,这些数据称为“键值”。一个键不论是否有子键,都可以有键值。一个键可以有许多个键值,每个键值都有一个名字,包含若干数据,这些数据的类型有许多种,下面列出了常见的注册表数据类型:
类型 | 含义 | REG_BINARY | 任何形式的二进制数据 | REG_DWORD | 32 位数据 | REG_DWORD_LITTLE_ENDIAN | 以 little-endian(小端)形式存储的32位数据 | REG_DWORD_BIG_ENDIAN | 以 big-endian(大端)形式存储的32位数据 | REG_EXPAND_SZ | 以NULL结尾的字符串,可以使用环境变量,如%PATH% | REG_LINK | 只能由操作系统使用的类型 | REG_MULTI_SZ | 字符串数组,以NULL结束字符串,以两个NULL结束数组 | REG_NONE | 未定义的数据类型 | REG_QWORD | 64位数据 | REG_QWORD_LITTLE_ENDIAN | little-endian形式的 64 位数据 | REG_SZ | 字符串,以 NULL 结束 |
比如键 HKEY_LOCAL_MACHINE\SYSTEM\Setup 具有 11 个键值,每个键值都有名称,各键值的数据类型不相同,而且它底下还有子键:
在对注册表键操作之前,需要使用 RegOpenKey() 或 RegOpenKeyEx() 函数打开键,然后再进行操作。
如果要创建新的键,那么就使用 RegCreateKey() 或 RegCreateKeyEx() 函数。
上面两组函数都返回键的句柄(HKEY 类型)。
如果要删除键则使用 RegDeleteKey() 或 RegDeleteKeyEx() 函数。
RegQueryInfoKey() 可以获取键的多方面信息,包括键值,子键等。
获取和设置键值还可以使用 RegGetValue(),RegQueryValueEx(), RegSetValueEx(),RegQueryMultipleValues() 等函数。
删除指定键值使用 RegDeleteValue() 函数。
遍历子键和键值可以使用 RegEnumKeyEx() 和 RegEnumValue() 函数。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|