报课、招生咨询电话:010-51268840/41

首页 > 计算机考试 > 等级考试 >
→论坛登陆 用户名  密码  
用VB函数轻松访问系统注册表

作者: 发布时间:2008-08-20 11:15:25 来源:育路计算机考试频道
注册表在Windows 9x中的作用是不言而喻的,它除了保存操作系统自身的软件、硬件及环境信息外,一个重要的用途就是保存应用程序中允许用户定制修改的配置信息。 在Visual Basic应用程序中,有两种访问系统注册表的方法:一种是使用VB自带的注册表函数,另一种则是使用Windows API函数,这两种方法各有优缺点,前者功能简单但容易使用,后者则功能强大但使用相对复杂一些,本文给大家介绍用VB自带的函数访问系统注册表的方法。 一、用VB函数访问注册表的方法

  在VB5.0中自带的注册表函数(命令)共有4条,分别是SaveSetting、GetSetting、GetAllSettings和DeleteSetting,下面是四个函数的详细用法: 1SaveSetting appname, section, key, setting  appname 应用程序或工程的名称

  section 注册表区域名称,在该区域保存注册表项设置

  key 要修改的注册表项的名称

  setting key的设置值

  SaveSetting的功能是在注册表中指定应用程序的区域中为某注册表项赋值,如果指定的应用程序名、区域名或注册表项不存在,则先建立再赋值。可以利用这条命令建立某个注册表项或修改注册表项的值。 如命令SaveSetting ″MyApp″, ″Option″, ″MyValue″, 1的功能是将程序TestApp的Option区中MyValue表项的值赋为1,如果MyValue不存在则先建立该表项再赋值为1。 2GetSetting(appname, section, key[, default])  appname 应用程序或工程的名称

  section 区域名称

  key 注册表项名称

  default  key的缺省值,为可选参数

  GetSetting的功能是从注册表中的应用程序指定区域中返回某注册表项的设置值,如果 GetSetting 的参数中的任何一项在注册表中都不存在,或key没有赋值(即=″″)时,则返回default指定的值。 如代码Value=GetSetting(″MyApp″, ″Option″, ″MyValue″)可以获取程序TestApp的Option区中MyValue表项的值。 3GetAllSettings(appname, section)  appname 应用程序或工程的名称

  section 区域名称

  GetAllSettings函数返回Variant型数据,其内容为字符串的二维数组,该二维数组包含指定区域中的所有注册表项设置及其对应值。如果指定的appname或section不存在,则返回未初始化的Variant。 如命令MySettings=GetAllSettings(″MyApp″, ″Option″)可获取Option下所有注册表项的名称和取值,并将结果保存在变体型数据MySettings中。 4DeleteSetting appname[, section[, key] ]  appname 应用程序或工程的名称

  section 要删除注册表项设置的区域名称,为可选参数

  key   要删除的注册表项,为可选参数

  DeleteSetting命令在注册表中,删除应用程序信息、区域或注册表项。当只提供appname参数时,将删除appname指定的应用程序的所有信息,如果提供了appname和section参数,则删除section指定的区域,如果提供了所有参数,则删除指定的注册表项设置。 如果指定的应用程序、区域或注册表项不存在,DeleteSetting将不做任何事情。 如:DeleteSetting ″MyApp″将删除MyApp应用程序保存的全部信息。 二、程序实例

  下面以一个简单的实例说明四个函数的使用。

  新建工程,在Form1上放置两个标签,Caption属性分别为“姓名”和“公司”;两个文本框txtName和txtCompany,Text属性均设为空;三个命令按钮cmdSave、cmdFind和cmdDelete,Caption分别设为“保存”、“查看”和“删除”,窗体布局如图1。 给三个命令按钮添加如下代码:

  Private Sub cmdSave_Click()

  ′将两个文本框中的内容分别赋给MyApp下User区中Name和Company SaveSetting ″MyApp″, ″User″, ″Name″, txtName SaveSetting ″MyApp″, ″User″, ″Company″, txtCompany MsgBox ″您的信息已成功保存!″

  End Sub

  Private Sub cmdFind_Click()

  ′查找MyApp下User区中Name和Company的设置值并显示 MsgBox ″您的姓名是:″ & GetSetting(″MyApp″, ″User″, ″Name″) & Chr(13) & Chr(10) & ″您的公司是:″ & GetSetting(″MyApp″, ″User″, ″Company″) End Sub

  Private Sub cmdDelete_Click()

  ′删除MyApp下的User区域及其下的所有注册表项 DeleteSetting ″MyApp″, ″User″ End Sub

  运行程序,在图窗口中输入姓名和公司名称,之后按“保存”按钮,然后再按“查找”,可以看到显示出了正确的结果(图2),说明保存和查找操作都已正常进行。如果在保存之前或删除之后按“查找”按钮,则出现右图3对话框,说明要找的注册表项不存在。 使用上面介绍的四个函数(命令),我们可以非常容易地在VB代码中访问系统注册表。但有一点比较遗憾,VB的这几个函数只能在系统注册表的固定位置进行工作,即只能在\KEY_CURRENT_USER\Software\VB and VBA Program Settings下完成建立、修改和删除操作,当然这个限制对于一般的应用程序无关大局,但对较大的应用程序就会造成一些不便,这时我们就需要借助于Windows API函数。

    育路网
 
 
                                        
评论】【加入收藏夹】【 】【打印】【关闭
育路网2007年夏令营联展
 更多有关新闻:
 
·[考试动态2008年医师资格考试网上报名须知 ·[考试动态2008年医师资格考试3月10日开始网
·[考试动态卫生部医师资格考试委员会公告 ·[考试动态2008年医师考试于9月20至21进行
·[考试动态关于北京考区2008年度国家医师资 ·[考试动态崇文区卫生局关于北京考区2008年
·[考试动态丰台区卫生局关于北京考区2008年 ·[考试动态2008年上海市医师资格考试(考区
·[考试动态2008年医师资格考试(天津考区) ·[考试动态惠州市卫生局关于2008医师资格考
·[考试动态无锡市关于2008年医师资格考试网 ·[考试动态关于珠海市2008年医师资格考试的
·[考试动态韶关市关于2008年医师资格考试网 ·[考试动态深圳市关于2008年医师资格考试深
·[考试动态杭州市卫生局关于2008年医师资格 ·[考试动态丽水市关于2008年医师资格考试报
发表评论
用户名: 密码:
验证码: 匿名发表
课程搜索:
选择分类:
课程关键字:
课程 学校
 2008年首都高校秋季招生
北京理工大学2008年招生简章
北京文理研修学院2008年招生简章
北京建设大学2008年招生简章
北京中山学院2008年招生简章
北京城市学院2008年招生简章
培黎职业学院2008年招生简章
北京金融学院2008年招生简章
北京吉利大学2008年招生简章
北方工商管理学院2008年招生简章
 本周推荐课程
·初中起点雅思半年脱产 ·启德雅思6分冲刺课程
·新概念1+2册慢速精讲课 ·环球新托福100分强化
·北文王长喜四级强化班 ·英语四、六级培训课程
·海文考研数学课程 ·海文考研英语课程
·北大企业管理高级研修班 ·清华企业领导人研修班
·中美高中生交换项目 ·北工大中加学院2+2本科
·劳动和社会保障部物流师 ·物业管理师职业培训
·市场营销经理国际资格 ·现场管理实务培训
清华大学留学
中法管理硕士预科班
课程咨询热线:010-51268840 51268841
 最新新闻
·用VB函数轻松访问系统注册表
·公务员行测片断阅读四种实用技巧
·06、07年数字推理真题解析
·云南省半年来问责370名公务员 劝其引咎辞职3人
·金路名师谈公务员备考:行测考试数字推理真题评
·助理电子商务师考试试题(第十七套)
·助理电子商务师考试试题(第十九套)——操作题
·助理电子商务师考试试题(第二十一套)——两套
·雅思新口语发音评分标准出台
·2008年《电子商务概论》练习题(一)
 育路社区            进入>>
 
学员报名服务中心: 北京北三环西路32号恒润中心1806(交通位置图
咨询电话:北京- 010-51268840/41 传真:010-51418040 上海-021-64392659、64397431
育路网-中国新锐教育社区: 北京站 | 上海站 | 郑州站| 武汉站
本站法律顾问: 邱清荣律师
北京育路互联科技有限公司版权所有 | 京ICP备05012189号