




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
c+编程 CRegKey 类(注册表类) 无基类 【说 明】注册表类 CRegKey 类提供了处理系统注册表键的功能。注册表包含着 系统组件的安装细节的设置。例如,软件的版本号、安装硬件的物理和逻辑映 射或者是 COM 组件。 CRegKey 类为一台给定的计算机的系统注册表提供了一个编程接口。例如,打 开一个注册表键,调用成员函数 Open;检取一个注册表键,调用成员函数 QueryValue;修改一个注册表键,调用成员函数 SetValue;关闭一个注册表键, 调用成员函数 Close。 当关闭一个注册表键,注册表的数据将被写入硬盘。这一过程可能需要几秒钟 的时间。如果你需要将注册表的数据准确地写入硬盘,可以调用 Windows API 函数 RegFlushKey,由于该函数需要使用更多的系统资源,因此除非在必要的 情况下否则最好不使用该函数。 【库 名】 【成员函数】 (1)void Attach(HKEY hKey); 【参 数】 hKey 指定一个注册表键的句柄。 【注 释】本成员函数将指定的注册表键的句柄分配给当前的注册表类对象,将 注册表类的成员属性 m_hKey 设置为参数 hKey 指定的值。注意,如果 m_hKey 为 非空值,将产生一个错误。 (2)LONG Close(); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【注 释】本成员函数用于释放注册表类的成员属性 m_hKey 句柄,并将它设置 为空。 (3)LONG Create(HKEY hKeyParent, LPCTSTR lpszKeyName, LPTSTR lpszClass = REG_NONE, DWORD dwOptions = REG_OPTION_NON_VOLATILE, REGSAM samDesired = KEY_ALL_ACCESS, LPSECURITY_ATTRIBUTES lpSecAttr = NULL, LPDWORD lpdwDisposition = NULL); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 hKeyParent 标识一个当前打开的注册表键的句柄,或标识下列预定义的保留句柄值之一: HKEY_CLASSES_ROOT HKEY_CURRENT_USER HKEY_LOCAL_MACHINE HKEY_USERS HKEY_CURRENT_CONFIG HKEY_DYN_DATA lpszKeyName 指向一个以 NULL 为结束的字符串,该字符串指定由本成员函数创建或打开的注 册表键的名称。这个键必须是参数 hKeyParent 标识的键的子键。 lpszClass 指向一个以 NULL 为结束的字符串,该字符串指定由本成员函数创建或打开的注 册表键的类型。在 Windows9X 系统下该参数必须为缺省值 REG_NONE。 dwOptions 为注册表键指定特殊的选择。在 Windows9X 系统下该参数可以为下列值: REG_OPTION_VOLATILE 指定此注册表键为非永久性的。注册信息存储在内存中,当系统重新启动时信 息将丢失。 REG_OPTION_NON_VOLATILE 指定此注册表键为永久性的。注册信息存储在硬盘的某一文件中,当系统重新 启动时信息仍将有效。 samDesired 指定一个访问的掩码,该掩码为注册表键指定所希望的加密访问权。该参数可 以是下列值的组合: KEY_ALL_ACCESS 是下述掩码的组合: KEY_CREATE_LINK、KEY_CREATE_SUB_KEY、KEY_ENUMERATE_SUB_KEYS、KEY_NOTI FY、KEY_QUERY_VALUE、KEY_SET_VALUE。 KEY_CREATE_LINK 允许创建一个符号连接。 KEY_CREATE_SUB_KEY 允许创建一个子键。 KEY_ENUMERATE_SUB_KEYS 允许枚举子键。 KEY_EXECUTE 允许进行读访问。 KEY_NOTIFY 允许修改通知。 KEY_QUERY_VALUE 允许查询子键数据。 KEY_READ 是下述掩码的组合: KEY_ENUMERATE_SUB_KEYS、KEY_NOTIFY、KEY_QUERY_VALUE。 KEY_SET_VALUE 允许设置子键数据。 KEY_WRITE 是下述掩码的组合:KEY_CREATE_SUB_KEY、KEY_SET_VALUE。 lpSecAttr 指向一个 SECURITY_ATTRIBUTES 结构,该结构指定新的键加密属性。 lpdwDisposition 指向一个 DWORD 类型变量的指针。当本参数不为 NULL 时,接收下列返回值: REG_CREATED_NEW_KEY 注册表键先前不存在,但现已被创建。 REG_OPENED_EXISTING_KEY 注册表键先前存在,仅被打开而不改变它。 【注 释】本成员函数用于在注册表中创建指定的键。若该键存在则打开它。 (4)CRegKey(); 【注 释】构造一个 CRegKey 类的对象,将成员属性 m_hKey 设置为 NULL。 (5)LONG DeleteSubKey(LPCTSTR lpszSubKey); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 lpszSubKey 指向一个以 NULL 为结束的字符串,该字符串指定由本成员函数将要删除的注册 表键的名称。这个键必须是成员属性 m_hKey 标识的键的子键。 【注 释】在 Windwos9X 系统下本成员函数可以在注册表中删除指定的键及其子 键。但在 Windows NT 系统下本成员函数只能删除那些没有子键的键。 (6)LONG DeleteValue(LPCTSTR lpszValue); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 lpszValue 指向一个以 NULL 为结束的字符串,该字符串是要删除的键值的名称。 【注 释】本成员函数用于删除成员属性 m_hKey 标识的键下的指定键值。 (7)HKEY Detach(); 【返回值】返回分配给该注册表类对象的注册表键的句柄 【注 释】本成员函数用于将成员属性 m_hKey 与注册表对象分离,并将成员属 性 m_hKey 设置为 NULL。 (8)LONG Open(HKEY hKeyParent, LPCTSTR lpszKeyName, REGSAM samDesired = KEY_ALL_ACCESS); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 hKeyParent 标识一个当前打开的注册表键的句柄,或标识下列预定义的保留句柄参见成员 函数 Create。 lpszKeyName 指向一个以 NULL 为结束的字符串,该字符串指定由本成员函数创建或打开的注 册表键的名称。这个键必须是参数 hKeyParent 标识的键的子键。 samDesired 指定一个访问的掩码,该掩码为注册表键指定所希望的加密访问权。参见成员 函数 Create。 【注 释】本成员函数用于打开指定的注册表键,并且设置成员属性 m_hKey。 如果参数 lpszKeyName 为 NULL 或则指向一个空字符串,本成员函数将打开由参 数 hKeyParent 标识的键,并且不关闭先前打开的键。与成员函数 Create 不同 的是当指定键不存在时本成员函数不会建立该键。 (9)LONG QueryValue(DWORD LONG QueryValue(LPTSTR szValue, LPCTSTR lpszValueName, DWORD* pdwCount); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 dwValue 用于接收枚举的数值型键值。 lpszValueName 指向一个以 NULL 为结束的字符串,该字符串指定由本成员函数枚举的注册表键 值的名称。 szValue 一个字符型指针,用于接收枚举的字符型键值。 pdwCount 一个 DWORD 型变量的地址,用于指定枚举字符型键值的长度。 【注 释】本成员函数用于枚举与一个打开的注册表键值相联系的键值的数据。 注意,由于注册表在保存的字符串时也同时保存着标志字符串结束的空字符, 因此,用于接收参数 szValue 应为接收字符串多保留一个存放空字符的位置。 (10)LONG RecurseDeleteKey(LPCTSTR lpszKey); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 lpszKey 指向一个以 NULL 为结束的字符串,该字符串是要删除的键值的名称。 【注 释】本成员函数用于删除成员属性 m_hKey 标识的键下的指定键值及其子 键。如果在 Windwos NT 系统下删除带有子键的键必须调用本成员函数。在 Windows9X 系统下本成员汉数与成员函数 DeleteSubKey 通用。 (11)LONG SetKeyValue(LPCTSTR lpszKeyName, LPCTSTR lpszValue, LPCTSTR lpszValueName = NULL); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 lpszKeyName 指向一个以 NULL 为结束的字符串,该字符串指定由本成员函数修改的注册表键 的名称。这个键必须是参数 hKeyParent 标识的键的子键。 lpszValue 指向一个以 NULL 为结束的字符串,该字符串是为指定键值新设定的值。 lpszValueName 指向一个以 NULL 为结束的字符串,该字符串指定修改的键值的名称。 【注 释】本成员函数用于打开或者建立由参数 lpszKeyName 指定的子键,将参 数 lpszValue 中的数据保存在由参数 lpszValueName 指定的键值下。 (12)LONG SetValue(DWORD dwValue, LPCTSTR lpszValueName); LONG SetValue(LPCTSTR lpszValue, LPCTSTR lpszValueName = NULL); LONG SetValue(HKEY hKeyParent, LPCTSTR lpszKeyName, LPCTSTR lpszValue, LPCTSTR lpszValueName = NULL); 【返回值】如果本成员函数调用成功,返回 ERROR_SUCCESS 值;否则返回一个 错误的值。 【参 数】 dwValue 指向一个 DWORD 型变量,该变量是为指定键值新设定的值。 lpszValueName 指向一个以 NULL 为结束的字符串,该字符串指定修改的键值的名称。 lpszValue 指向一个以 NULL 为结束的字符串,该字符串是为指定键值新设定的值。 hKeyParent 标识一个当前打开的注册表键的句柄,或标识下列预定义的保留句柄参见成员 函数 Create。 lpszKeyName 指向
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业园区电气系统设计与施工策略
- 工业大数据在制造业中的应用
- 工业安全与防护技术的发展
- 工业污染源的环境监测与管理
- 工业废水处理厂的环境监控技术
- 工业污染控制与环境保护技术
- 工业生产中的事故分析与预防
- 工业绿色改造的途径与策略
- 工业自动化与智能制造的探讨
- 工业设计与智能制造技术
- 2025届上海市静安区七下数学期末经典试题含解析
- 鲁班奖评选标准试题及答案
- 2024-2025学年人教版一年级下数学期末试卷(含答案)
- 行车干扰施工方案
- 植物拓染教学课件
- 2025-2030年中国微电网行业市场深度调研及发展前景与投资研究报告
- 访谈保密协议书范本
- 通信故障应急处理及恢复流程
- 网络通信技术应用 课件 2.11 DHCP协议与应用
- 2023年5月全国事业单位考试联考D类中学综合应用能力真题试题试卷答案解析
- 成人体外心肺复苏专家共识更新(2023版)解读
评论
0/150
提交评论