网络编程
位置:首页>> 网络编程>> Asp编程>> 用Asp修改注册表(2)

用Asp修改注册表(2)

  发布时间:2008-01-04 12:33:00 

标签:注册表,asp,VBscript,组件

方法详解

1、RegRead操作详解

读操作RegRead主要是用来读取注册表中主键的默认值或键值的数据,我们可以将读得的数据送到相应的变量中,再利用VB中的MsgBox()函数将该数据显示出来,这就达到了读取注册表中数据的目的(也可以利用对象OperationRegistry的方法Popup()将读取的数据送至屏幕), 例如:


'read.vbs(将以下代码存为read.VBs文件) 
Dim OperationRegistry 
Set OperationRegistry=Wscript.CreateObject("Wscript.Shell") 
Dim Read_Data1,Read_Data2 
Read_Data1=OperationRegistry.RegRead("HKCR\.xxf\") 
'读取根键HKEY_CLASSES_ROOT之下的.xxf主键的默认值,并将该数据送至变量Read_Data1 
Read_Data2=OperationRegistry.RegRead("HKCR\.xxf\value") 
'读取.xxf主键之下的value键值的数据,并将该数据送至变量Read_Data2 
MsgBox("Default="&Read_Data1&" value="&Read_Data2) 
'将读取的数据显示出来 


2、RegWrite操作详解

写操作RegWrite主要是用来在注册表中新建主键或键值,并要赋予给它们一个初始值,该操作同样可以对注册表中以存在的主键或键值进行数据的修改,因此写操作的参数结构就比读操作要复杂一些,它不仅要路径参数,还要一个初始值和类型参数.

先来看初始值参数,该参数对于写操作来说是必不可少的,它可以为空(null)但却不能省掉。在新建主键时,初始值参数就赋给了该主键的默认值,在新建键值时,初始值参数就成了新建键值的初始数据.而初始值的类型,则是由类型参数决定的.类型主要有以下三种:

(1)REG_SZ:字符型.该类型为缺省类型
(2)REG_DWORD:双字节型.
(3)REG_BINARY:二进制型.

以上三种类型第1种和第2种用得最多,第3种类型在某些场合可以用第2种加以替代,这三种类型的赋值方法如下:

对于REG_SZ型:直接用字符串赋予,如"text","string"等
对于REG_DWORD型和REG_BINARY型则有两种赋值方式

i)直接用十进制的数表示,如:0,1等.
ii)用十六进制的数表示,如:0x12,0xff等. 看例:


'write.VBs 
Dim OperationRegistry 
Set OperationRegistry=Wscript.CreateObject("Wscript.Shell") 
Default=OperationRegistry.RegRead("HKCR\") 
'获取一个空值 (null) 
  
OperationRegistry.RegWrite "HKCR\.xxf\",Default 
'在根键HKEY_CLASSES_ROOT之下新建主键.xxf,并置其默认值为空 
  
OperationRegistry.RegWrite "HKCR\.xxf\","xxffile" 
'在根键HKEY_CLASSES_ROOT之下新建主键.xxf,并置其默认值为"xxffile" 
  
OperationRegistry.RegWrite "HKCR\.xxf\value1","string" 
'在主键.xxf之下新建一个字符串型键值value1,并置其初始值为"string" 
  
OperationRegistry.RegWrite "HKCR\.xxf\value2",1,"REG_DWORD" 
'在主键.xxf之下新建一个REG_DWORD型键值value2,并置其初始值为1 
  
OperationRegistry.RegWrite "HKCR\.xxf\value3",0Xff,"REG_BINARY" 
'在主键.xxf之下新建一个二进制型键值value3,并置其初始值为十六进制的ff 


3、RegDelete操作详解

删除操作RegDelete主要是用来删除注册表中已存在的主键或键值,该操作是一种极其危险的操作,它能将主键或键值毫不留情的在注册表中“砍掉”,无论该键值下面有多重要的数据,它都能畅行无阻,因此在使用该操作时务必小心。

删除操作的参数形式与读操作的参数形式几乎完全相同,只是有一点小小的区别,那就是删除操作不需要将操作的返回值送给某一变量,例如:


'delete.VBs 
Dim OperationRegistry 
Set OperationRegistry=Wscript.CreateObject("Wscript.Shell") 
OperationRegistry.RegRead("HKCR\.xxf\value") 
'删除.xxf主键之下的value键值 
OperationRegistry.RegRead("HKCR\.xxf\") 
'删除根键HKEY_CLASSES_ROOT之下的.xxf主键 


强调一点,不要更改注册表中已存在的主键或键值,更不要将它们删除,因为对注册表进行了不当的写操作或删操作,情况严重的会导致系统崩溃!如果你真想这么做,那就请你作好注册表的备份。

 

0
投稿

猜你喜欢

  • javascript编写的窗口代码,可以关闭显示窗口,可以最小化或还原窗口大小,还可以鼠标移动窗口,不错的一个功能。截图如下:<htm
  • 前言HTML 5如同一场革命,正在Web2.0后时代轰轰烈烈的进行着。HTML 5是什么,无须我在这里赘述了。对于HTML 5的革新,按我的
  • 做教育业的网站,会将此遇到这个问题:如何在网页上显示音标?音标为什么显示为乱字符?等等类似的问题。前两天做沪江网某英语页面的时候也碰到了这个
  • 兼容IE6的第一步就是单独对IE进行兼容,你针对IE6所写的代码只影响IE6;有几种方法可以区分开IE6:IE特有条件注释、CSS选择器、J
  • 首先在我们进行信息系统的开发的时候,数据库的应用必不可少,对于一个企业级别的数据库应用很少是只使用一块磁盘的,很多都是使用RAID磁盘阵列,
  • 网站开发时经常需要在某个页面需要实现对大量图片的浏览,如果考虑流量的话,大可以像pconline一样每个页面只显示一张图片,让用户每看一张图
  • 和设计师打过交道的人一定也见到过少数极品,不是扎着小辫子留着小胡子,就是剃了光头抽根烟,通常说起来一套一套的人作品都很一般般,而作品一般般的
  • 一、增强的可扩展性 Oracle9i Real Application Clusters是Oracle的下一代并行服务器系列产品。Oracl
  • 最近在研究品牌如何演绎,当然,看的时候没有忘记本行,分析了一下他们的交互设计~~路易威登LV上图采用胶片展示多组信息——大片展示品牌渲染。利
  • SQL Server导出表到EXCEL文件的存储过程:*--数据导出EXCEL导出表中的数据到Excel,包含字段名,文件为真正的Excel
  • CSSer与其他IT职位一样,在找工作的时候,都会面临着面试官提出的问题,或者给出的试卷。一、超链接点击过后hover样式就不出现的问题?被
  • 在seclists中看到一个很惊人的thread:http://seclists.org/oss-sec/2012/q2/493MySQL爆
  • 数据完整性是任何数据库系统要保证的重点。不管系统计划得有多好,空数据值的问题总是存在。本文探讨了在SQL Server中处理这些值时涉及的3
  • 一个写给别人的小代码顺便也贴上来这是一个滑动展示用的小容器通过鼠标移动和离开触发滑动效果<!DOCTYPE html PUBLIC &
  •  一直以来,每次调用Ajax方法都需要创建一次 Microsoft.XMLHTTP 对象,今天在使用Ajax技术做一个类似聊天室的
  • 插入一条记录后,如何得到最新的自动增加ID?我们要用到SQL Server的@@IDENTITY。它能够记录下系统最近使用的一个IDENTI
  • 支持实时监控sliderbar的数据,允许有callback回调的函数,有示例1、可自定样式SetStyle() 2、带有onSroll功能
  • 当数据库服务器变得十分繁忙导致性能下降时,你会怎么办?购买更多的硬件升级你的服务器,还是重新考虑数据库服务器设计使得数据库平台具备良好的可升
  • SQL Server有几个版本都在使用中&mdash;&mdash;4.2, 6.0, 6.5, 7.0, 2000,以及2
  • 摘要:本文介绍了字符与编码的发展过程,相关概念的正确理解。举例说明了一些实际应用中,编码的实现方法。然后,本文讲述了通常对字符与编码的几种误
手机版 网络编程 asp之家 www.aspxhome.com