没有合适的资源?快使用搜索试试~ 我知道了~
注册表API函数
需积分: 9 79 下载量 98 浏览量
2008-06-17
17:10:04
上传
评论
收藏 8KB TXT 举报
温馨提示
试读
7页
一些常用的注册表编程API函数祥解
资源推荐
资源详情
资源评论
1・RegClose()
原形:LONG RegCloseKey(
HKEY hKey // 释放已经打开的注册表句柄
);
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:关闭指定的主册表键,释放句柄。当对一个或多个键或值操作完成以后,需要关闭其键来进行保存操作结果。关闭一个键后,句柄变为非法,以使其不可再次被使用。为系统重新使用而释放句柄。
例子
BOOL bRet = TRUE;
if( m_hKey == NULL )
return( FALSE );
bRet = ( ::RegCloseKey( m_hKey ) == ERROR_SUCCESS );
m_hKey = NULL;
return( bRet );
2・RegCreateKeyEx()和RegCreateKey()
原形:LONG RegCreateKeyEx(
HKEY hKey, // 主键名称
LPCTSTR lpSubKey, // 子键名称或路径
DWORD Reserved, // 保留,为0
LPTSTR lpClass, // 没弄懂,我设为空也差不多
DWORD dwOptions,
/* 对你建立的键的一些选项,可以是这些值:REG_OPTION_NON_VOLATILE,REG_OPTION_VOLATILE,REG_OPTION_BACKUP_RESTORE第一个是默认的了。一般用第一个就可以了。*/
REGSAM samDesired, // 设置你对你建立的这个键的访问权限
LPSECUR99vY_ATTRIBUTES lpSecurityAttributes,
//不太明白
PHKEY phkResult, // 指向你建的句柄
LPDWORD lpdwDisposition //用来查看是打开一个已经有的键,还是新建了键
);
RegCreateKey()函数简单了不少,请自己看了。
返回值:不成功返回非0,成功返回ERROR_SUCCESS.
原形:LONG RegCloseKey(
HKEY hKey // 释放已经打开的注册表句柄
);
返回值:不成功返回非0,成功返回ERROR_SUCCESS
解释:关闭指定的主册表键,释放句柄。当对一个或多个键或值操作完成以后,需要关闭其键来进行保存操作结果。关闭一个键后,句柄变为非法,以使其不可再次被使用。为系统重新使用而释放句柄。
例子
BOOL bRet = TRUE;
if( m_hKey == NULL )
return( FALSE );
bRet = ( ::RegCloseKey( m_hKey ) == ERROR_SUCCESS );
m_hKey = NULL;
return( bRet );
2・RegCreateKeyEx()和RegCreateKey()
原形:LONG RegCreateKeyEx(
HKEY hKey, // 主键名称
LPCTSTR lpSubKey, // 子键名称或路径
DWORD Reserved, // 保留,为0
LPTSTR lpClass, // 没弄懂,我设为空也差不多
DWORD dwOptions,
/* 对你建立的键的一些选项,可以是这些值:REG_OPTION_NON_VOLATILE,REG_OPTION_VOLATILE,REG_OPTION_BACKUP_RESTORE第一个是默认的了。一般用第一个就可以了。*/
REGSAM samDesired, // 设置你对你建立的这个键的访问权限
LPSECUR99vY_ATTRIBUTES lpSecurityAttributes,
//不太明白
PHKEY phkResult, // 指向你建的句柄
LPDWORD lpdwDisposition //用来查看是打开一个已经有的键,还是新建了键
);
RegCreateKey()函数简单了不少,请自己看了。
返回值:不成功返回非0,成功返回ERROR_SUCCESS.
解释:打开指定的键或子键。如果要打开的键不存在的话,本函数会试图建立它。当在创建或打开注册表的键时,需要指定访问权限,而这些访问权限需要到一级。默认的权限是KEY_ALL_ACCESS权限。还有KEY_CREATE_LINK创建字符链权限,KEY_CREATE_SUB_KEY创建子键权限,KEY_EXECUTE读取键权限,KEY_NOTIFY获得修改键通知的权限,KEY_QUERY_VALUE查询键值的权限,KEY_SET_VALUE设置数据值的权限。注意不能在根一级建键,在注册表的根一级仅可有预定义的键。具体使用,请查看联机手册。
例子:
HKEY m_hkey;
DWORD dwDisposition;
long ret0=(::RegCreateKeyEx
(HKEY_CURRENT_USER,"REGD\\",0,NULL,
REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&m_hkey,&dwDisposition));
if(ret0!=ERROR_SUCCESS) //如果无法打开hKEY,则终止程序的执行
{
MessageBox("错误: 无法打开有关的hKEY!");
return;
}
if(dwDisposition==REG_OPENED_EXISTING_KEY)
MessageBox("打开了一个已经存在的键");
else
{
if(dwDisposition==REG_CREATED_NEW_KEY)
MessageBox("建立一个新键");
}
RegClosekey(m_hkey);
3・RegOpenKey()和RegOpenKeyEx()
原形:LONG RegOpenKeyEx(
HKEY hKey, // 要打开主键名
LPCTSTR lpSubKey, // 子键或路径
DWORD ulOptions, // 保留,为0
REGSAM samDesired, // 操作权限标志
PHKEY phkResult // 指向你打开键的句柄
);
返回值:不成功返回非0,成功返回ERROR_SUCCESS.
例子:
HKEY m_hkey;
DWORD dwDisposition;
long ret0=(::RegCreateKeyEx
(HKEY_CURRENT_USER,"REGD\\",0,NULL,
REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&m_hkey,&dwDisposition));
if(ret0!=ERROR_SUCCESS) //如果无法打开hKEY,则终止程序的执行
{
MessageBox("错误: 无法打开有关的hKEY!");
return;
}
if(dwDisposition==REG_OPENED_EXISTING_KEY)
MessageBox("打开了一个已经存在的键");
else
{
if(dwDisposition==REG_CREATED_NEW_KEY)
MessageBox("建立一个新键");
}
RegClosekey(m_hkey);
3・RegOpenKey()和RegOpenKeyEx()
原形:LONG RegOpenKeyEx(
HKEY hKey, // 要打开主键名
LPCTSTR lpSubKey, // 子键或路径
DWORD ulOptions, // 保留,为0
REGSAM samDesired, // 操作权限标志
PHKEY phkResult // 指向你打开键的句柄
);
返回值:不成功返回非0,成功返回ERROR_SUCCESS.
剩余6页未读,继续阅读
资源评论
cmy0891
- 粉丝: 7
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- apk.tw_LineLite_v8a_v.2.17.1_sign.apk
- Elasticsearch实战:构建高效搜索系统的秘诀.zip
- HTML+CSS+JS网页设计:从入门到精通.zip
- 数据库课程设计:从理论到实践的全面指南.zip
- Python闭包:深入理解与应用场景解析.zip
- Win64OpenSSL-3-3-0.exe
- 课高分程设计-基于C++实现的民航飞行与地图简易管理系统-南京航空航天大学
- 航天器遥测数据故障检测系统python源码+文档说明+数据库(课程设计)
- 北京航空航天大学操作系统课设+ppt+实验报告
- 基于Vue+Echarts实现风力发电机中传感器的数据展示监控可视化系统+源代码+文档说明(高分课程设计)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功