仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 568|回复: 9
打印 上一主题 下一主题

[学习教程] ASP编程:用asp修正注册表!!!!!!!!!!!!

[复制链接]
冷月葬花魂 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:34:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。注册表看完了这个你就能够用asp修正注册表了!
赫赫有名的WSH传闻过吗?它就是WindowsScriptHost的缩写情势,WSH是Windows平台的剧本指令,它的功效非常壮大,而且它仍是使用语法布局复杂、易学易用且功效壮大的JScript和VBScript剧本言语,来完成其出色的功效的,除本文先容的修正注册表以外,它还能够会见Excel文件,也能与收集相同,固然它最年夜的上风莫过于它能与操纵体系相同,而修正注册表只是它与操纵体系相同的冰山一角。恰是它有云云诸多的长处与有用性,正倍受良多Windows用户的喜爱,本文就为人人先容一二,让列位明白一下WSH的风度。
用VBScript编写的WSH程叙文件的扩大名为.vbs,该剧本程序在窗口界面是由wscript.exe文件注释实行的,在字符界面是由cscript.exe文件注释实行的,命令格局为:cscriptfilename.vbs
 
创立工具
用VBScript修正注册表,必需先创立一个能于操纵体系相同的工具,再使用该工具的各类办法对注册表举行操纵,创立这个工具的办法和格局以下:
DimOperationRegistry
SetOperationRegistry=WScript.CreateObject("WScript.Shell")
上述这些代码就创立了一个能与操纵体系相同的工具OperationRegistry
 
工具的办法
有了以上这个工具,其实不即是就可以即刻对注册表举行操纵,我们还必需弄清该工具对注册表举行操纵的几种主要办法.
1.对注册表的读操纵RegRead
2.对注册表的写操纵RegWrite
3.对注册表的删操纵RegDelete
增补一点,WSH另有两个通用的办法:
WScript.Echo()用来显现一串文本信息,相称于VB中的MsgBox()。
Wscript.Quit()用来加入VBScript程序。
 
办法的参数
关于以上三种操纵RegRead,RegWrite,RegDelete都必要带参数举行,而且这些操纵的参数的个数和情势又不尽不异,上面我就把它们的一个配合且必不成少的参数讲一下:
该参数可称作是"路径参数",它包含根键,主键路径和键值,各部分暗示的办法以下:
根键:
根键有两种暗示办法。
办法一:间接用它在注册表中的字符串来暗示,如:
HKEY_CLASSES_ROOT,HKEY_CURRENT_USER等
办法二:用缩写的四个字母来暗示,前两个为HK,后两个即为根键单词的首字母。如:
根键HKEY_CLASSES_ROOT暗示为:HKCR,根键HKEY_CURRENT_USER可暗示为:HKCU等。
主键路径:
主键路径就是方针键在注册表中的主键地位,各个主键之间用""符分开开。如:"SoftwareMicrosoftWindowsCurrentVersionPolicies"
键值:
键值参数间接接在主键路径以后。比方一个完全的路径以下所示:
"HKCRSoftwareMicrosoftWindowsCurrentVersionPoliciesNoRun"
 
办法详解
1、RegRead操纵详解
读操纵RegRead次要是用来读取注册表中主键的默许值或键值的数据,我们能够将读得的数据送到响应的变量中,再使用VB中的MsgBox()函数将该数据显现出来,这就到达了读取注册表中数据的目标(也能够使用工具OperationRegistry的办法Popup()将读取的数据送至屏幕),比方:
read.vbs(将以下代码存为read.vbs文件)
DimOperationRegistry
SetOperationRegistry=WScript.CreateObject("WScript.Shell")
DimRead_Data1,Read_Data2
Read_Data1=OperationRegistry.RegRead("HKCR.xxf")
读取根键HKEY_CLASSES_ROOT之下的.xxf主键的默许值,并将该数据送至变量Read_Data1
Read_Data2=OperationRegistry.RegRead("HKCR.xxfvalue")
读取.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
DimOperationRegistry
SetOperationRegistry=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.xxfvalue1","string"
在主键.xxf之下新建一个字符串型键值value1,并置其初始值为"string"
 
OperationRegistry.RegWrite"HKCR.xxfvalue2",1,"REG_DWORD"
在主键.xxf之下新建一个REG_DWORD型键值value2,并置其初始值为1
 
OperationRegistry.RegWrite"HKCR.xxfvalue3",0Xff,"REG_BINARY"
在主键.xxf之下新建一个二进制型键值value3,并置其初始值为十六进制的ff
 
3、RegDelete操纵详解
删除操纵RegDelete次要是用来删除注册表中已存在的主键或键值,该操纵是一种极为伤害的操纵,它能将主键或键值绝不包涵的在注册表中“砍失落”,不管该键值上面有多主要的数据,它都能畅行无阻,因而在利用该操纵时务必当心。
删除操纵的参数情势与读操纵的参数情势几近完整不异,只是有一点小小的区分,那就是删除操纵不必要将操纵的前往值送给某一变量,比方:
delete.vbs
DimOperationRegistry
SetOperationRegistry=WScript.CreateObject("WScript.Shell")
OperationRegistry.RegRead("HKCR.xxfvalue")
删除.xxf主键之下的value键值
OperationRegistry.RegRead("HKCR.xxf")
删除根键HKEY_CLASSES_ROOT之下的.xxf主键
夸大一点,不要变动注册表中已存在的主键或键值,更不要将它们删除,由于对注册表举行了不妥的写操纵或删操纵,情形严峻的会招致体系溃散!假如你真想这么做,那就请你作好注册表的备份。
 
使用实例
1、读本机“盘算机名”
ReadComputerName.vbs
DimReadComputerName
SetReadComputerName=WScript.CreateObject("WScript.Shell")
DimComputerName,RegPath
RegPath="HKLMSystemCurrentControlSetControlComputerNameComputerNameComputerName"
ComputerName=ReadComputerName.RegRead(RegPath)
MsgBox("盘算机名为"&ComputerName)
ASP一般认为只能运行在IIS上,正如前面所提到的,这并不是十分正确,事实上,ASP也能运行在Apache上。ApacheASP可在任意Apache服务器上运行有限的ASP功能,所需做的,只需打开mod_perl。
再现理想 该用户已被删除
沙发
发表于 2015-1-20 10:02:08 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
若天明 该用户已被删除
板凳
发表于 2015-1-29 06:44:06 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
地板
发表于 2015-1-30 05:15:01 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
海妖 该用户已被删除
5#
发表于 2015-2-6 07:31:26 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
冷月葬花魂 该用户已被删除
6#
 楼主| 发表于 2015-2-15 15:32:26 | 只看该作者
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
再见西城 该用户已被删除
7#
发表于 2015-3-4 11:57:51 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
山那边是海 该用户已被删除
8#
发表于 2015-3-11 19:26:39 | 只看该作者
不能只是将它停留在纸上谈兵的程度上。
第二个灵魂 该用户已被删除
9#
发表于 2015-3-19 09:47:48 | 只看该作者
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
老尸 该用户已被删除
10#
发表于 2015-3-27 17:56:20 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-15 10:01

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表