通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>操作系统>>注册表>>正文 新版上线![旧版]
注:打开慢时请稍等

在VB中使用注册表

http://www.iyit.net  日期:2006-6-28 18:17:47  来源:  点击:
参加讨论】Windows系统中的注册表(Resgister)保存着大量的信息,我们可读写注册表来更好地为我们软件服务。

  下面详细讲叙如何通过调用API函数操作注册表:如何打开、创建主键,如何保存键值,以及查询某键的键值等。

  一、常数定义和API申明(我们会在使用该API时对它进行说明):
  Private Const HKEY_CLASSES_ROOT = &H80000000 主键
  Private Const HKEY_CURRENT_USER = &H80000001 主键
  Private Const STANDARD_RIGHTS_ALL = &H1F0000
  Private Const KEY_ENUMERATE_SUB_KEYS = &H8
  Private Const KEY_SET_VALUE = &H2
  Private Const KEY_CREATE_SUB_KEY = &H4
  Private Const KEY_QUERY_VALUE = &H1
  Private Const KEY_NOTIFY = &H10
  Private Const KEY_CREATE_LINK = &H20
  Private Const SYNCHRONIZE = &H100000
  Private Const KEY_ALL_ACCESS = ((STANDARD_RIGHTS_ALL Or KEY_QUERY_VALUE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY Or KEY_CREATE_LINK) And (Not SYNCHRONIZE))
  Private Const REG_MULTI_SZ = 7
  Private Const ERROR_SUCCESS = 0&
  Private Const READ_CONTROL = &H20000
  Private Const REG_SZ = 1
  Private Const REG_DWORD = 4
  Private Const REG_EXPAND_SZ = 2
  Private Const REG_BINARY = 3
  Private Const REG_DWORD_BIG_ENDIAN = 5
  Private Const REG_DWORD_LITTLE_ENDIAN = 4
  Private Const REG_NONE = 0
  Private Declare Function RegOpenKeyEx Lib “advapi32.dll" Alias “RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
  Private Declare Function RegCreateKey Lib “advapi32.dll" Alias “RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
  Private Declare Function RegSetValueEx Lib “advapi32.dll" Alias “RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
  Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As

  Any, lpcbData As Long) As Long Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long


  二、将下列代码放在窗体的Load事件中
  Private Sub Form_Load()
  Dim hKey As Long 主键的句柄
  Dim lpData As String 查询得到的键值
  Dim SizeOfData As Long 键值的长度
  Dim ValueType As Long 键值的类型
  SizeOfData = 150
  Dim return_OpenKey As Long 函数调用的返回值
  Dim PriKey As String 主键
  Dim KeyValue1, KeyValue2 As String 键值名称
  PriKey = "北信BITI\People" 主键
  KeyValue1 = "教授" 键值名称
  KeyValue2 = "学生" 键值名称www.xker.com()
下面的函数RegOpenKeyEx取得一个句柄hKey

return_OpenKey =RegOpenKeyEx(HKEY_CURRENT_USER, "",0, KEY_ALL_ACCESS, hKey)
 
  下面的函数RegCreateKey建立一个主键,如此键已存在,则打开它
If RegCreateKey(hKey, PriKey, hKey) <> ERROR_SUCCESS Then
MsgBox "create " & PriKey & "Failed"
Exit Sub
End If
  
Dim KeyData As String 键值
KeyData = "500"

  下面的函数RegSetValueEx给指定的键值名称赋键值

If RegSetValueEx(hKey, KeyValue1, 0&, REG_SZ, ByVal KeyData, Len(KeyData) + 1) <> ERROR_SUCCESS Then
   MsgBox "SetValue " & KeyValue1 & "Failed "
   Exit Sub
   End If
   KeyData = "15020"

  下面的函数RegSetValueEx给指定的键值名称"学生" 赋键值为"15020"

本新闻共2页,当前在第1页  1  2  


编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:利用WindowsAPI函数和注册表获取系统信息
下一篇:让注册表记住VFP应用程序的使用次数
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
VB.NET注册表编程 用VB函数轻松访问系统注册表 在VB中调用API操作注册表
VB4.0对注册表操作的命令 asp.net中的vb7中如何调用dll中的函数 asp.net中的vb7中如何使用socket作一个
在ASP.NET中处理 datetime 的一些通用函 在ASP.NET中操作文件的例子(VB) 在ASP.NET中处理datetime的一些通用函数
VB.NET多线程开发实例 多线程填写treeview控件(vb.net) vb.net的windows窗体实现dos命令
 一个用Wsh来控制SqlServer的Dcom的VBs 和我一起入门Direct3D的VB.net编程 VB.NET如何在没有.NET框架的机器上运行
LCS问题算法之VB.net版 VB.net 调用带参数存储过程 vb.net 中实现画图
在VB.Net中创建使用控件数组 VB6 中 善用 ByRef 提升速度 VB6 中使用错误处理对于速度的影响
EJB系列教程之一(JBuilder4+IAS41+Vbj4 如何实现给定日期的若干天以后的日期(有 vBulletin HACK----显示话题大小和打开
最新更新 热点排行 推荐新闻
VB.NET注册表编程
让注册表记住VFP应用程序的使用次数
在VB中使用注册表
利用WindowsAPI函数和注册表获取系统信
MS-DOS方式下对注册表的编程
VB.NET注册表编程
让注册表记住VFP应用程序的使用次数
在VB中使用注册表
利用WindowsAPI函数和注册表获取系统信
MS-DOS方式下对注册表的编程
用注册表给应用程序加口令
对注册表进行编程的“捷径”
用VB函数轻松访问系统注册表
在VB中调用API操作注册表
编程解决注册表问题所需的函数详解
VB.NET注册表编程
让注册表记住VFP应用程序的使用次数
在VB中使用注册表
利用WindowsAPI函数和注册表获取系统信
MS-DOS方式下对注册表的编程
微软将于6月13日发布WORD漏洞补丁
PPLive最新内部版本揭密
移花接木-照片换脸术
CPU降温软件
借助黑龙江网通免费刷取QQ会员
KMPlayer常见问题及解决方法整理
解决局域网不能互相访问之全攻略
用Photoshop替换颜色做漂亮效果图
NERO刻录使用教程
某外企SQL Server面试题
共享软件的十大破解工具推荐
重庆青年建立个人网站 每月固定收入约
没见过 是读卡器也是刻录机!
ASP.NET2.0数据库入门之常见错误
威金蠕虫肆虐互联网 发送病毒链接迅速
流氓软件拉MSN用户征婚 伪装好友发邀请
网际快车1.72完全免费无广告、下载地址
拼音加加VS紫光输入法
给年轻工程师的“十大忠告” 
巧用CSS滤镜做图案文字
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights © 2004-2006 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息