|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『楼 主』:
快速定位注册表→VBS版
为了方便易用做成VBS版,添加到“网上邻居”右键菜单。
使用方法为:自动取得剪贴版内的注册表路径打开注册表定位。
快速注册表定位
①LastKey方法实现定位。
②由于网络中大量存在简写,自动转换HKCU→HKEY_CURRENT_USER
③若取得剪贴板中路径格式正确则无提示直达路径中最末有效路径。
④若取得剪贴板中路径为空或者路径格式错误则提示手动输入路径。
[ Last edited by baomaboy on 2007-4-14 at 04:13 AM ]
|
好多菩提树,好多明镜台。本来好多物,好多的尘埃。 |
|
2007-4-13 16:29 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
2 楼』:
快速定位注册表
Quote: | Dim WshSHell,FSO
On Error Resume Next
Set WshSHell = WScript.CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WinVer = WshSHell.Environment("Process")
Set Args = WScript.Arguments
CloseTime = 5
FileName = WScript.ScriptName
FileFullName = WScript.ScriptFullName
FilePath = FSO.GetParentFolderName(FileFullName)
InsPath = FSO.GetSpecialFolder(1)'''0=windows,1=system32,2=user-Temp,
InsFullName = FSO.BuildPath(InsPath ,FileName)
Copyright="玲珑科技"
QQ="QQ:25926183"
Email="Email:fty1995@163.com"
InsTitle="快速定位注册表"
InsAnswer="快速定位注册表"
RegPath1="HKEY_CLASSES_ROOT\CLSID\{208D2C60-3AEA-1069-A2D7-08002B30309D}\shell\QuickTo_Registry\"
RegValue1="定位注册表(&Q)"
RegForm1="REG_SZ"
RegPath2="HKEY_CLASSES_ROOT\CLSID\{208D2C60-3AEA-1069-A2D7-08002B30309D}\shell\QuickTo_Registry\command\"
RegValue2="wscript.exe "&InsFullName
RegForm2="REG_SZ"
IF FileFullName <> InsFullName then
intAnswer = MsgBox("【是】将“"+ InsAnswer +"”加入到网上邻居右键菜单,"&Chr(10)&Chr(10)&"【否】将“"+ InsAnswer +"”从网上邻居右键菜单删除。 ", vbQuestion + vbYesNoCancel, "安装 - "+ InsTitle +" - "+ Copyright)
If intAnswer = vbYes Then
WshSHell.RegWrite RegPath1,RegValue1,RegForm1
WshSHell.RegWrite RegPath2,RegValue2,RegForm2
FSO.GetFile(FileFullName).Copy(InsFullName)
WshSHell.popup _
"添加脚本文件:"+chr(10)+InsFullName+chr(10)+chr(10)+ _
"添加注册表项:"+chr(10)+chr(34)+ RegPath1 +chr(34)+chr(10)+ _
chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _
chr(10) & "Copyright(C) " + Copyright +" " & QQ &" " + Email _
, CloseTime, "安装成功 - "+ InsTitle +" - "+ Copyright, 0 + 64
end if
If intAnswer = vbNo Then
WshSHell.RegDelete RegPath2
WshSHell.RegDelete RegPath1
FSO.DeleteFile InsFullName
WshSHell.popup _
"删除脚本文件:"+chr(10)+InsFullName+chr(10)+chr(10)+ _
"删除注册表项:"+chr(10)+chr(34)+ RegPath1 +chr(34)+chr(10)+ _
chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _
chr(10) & "Copyright(C) " + Copyright +" " & QQ &" " + Email _
, CloseTime, "卸载成功 - "+ InsTitle +" - "+ Copyright, 0 + 64
End If
If intAnswer = vbCancel Then
end if
ELSE
Key_DataStr=UCase(CreateObject("htmlfile").parentWindow.clipboardData.getData("text"))
Key_DataStr = Trim(Key_DataStr)''网页中复制时首尾极易有多余的空格,去除。
Key_DataStr=Replace(Key_DataStr,chr(10),"")''换行和回车有时不同时存在,所以分别替换。
Key_DataStr=Replace(Key_DataStr,chr(13),"")
if Left(Key_DataStr,2)="HK" then
if Right(Key_DataStr,1)="\" then
Key_DataStr=Left(Key_DataStr,Len(Key_DataStr)-1)
end if
Key_Data=Key_DataStr
else
Key_Data=Inputbox(vbcrlf & "由于剪贴板中的路径无效," & vbcrlf & vbcrlf & "请手工输入你要去的路径:","输入注册表路径-快速定位注册表",Key_DataStr)
end if
If Key_Data=False Then WScript.Quit
Key_Data=Replace(Key_Data,"HKCR","HKEY_CLASSES_ROOT")''转换根键的简写。
Key_Data=Replace(Key_Data,"HKCU","HKEY_CURRENT_USER")
Key_Data=Replace(Key_Data,"HKLM","HKEY_LOCAL_MACHINE")
Key_Data=Replace(Key_Data,"HKU","HKEY_USERS")
Key_Data=Replace(Key_Data,"HKCC","HKEY_CURRENT_CONFIG")
Key_Data=Replace(Key_Data,"\\","\")''如果是REG文件内容,替换其中的双“\”符号。
Call LastKey
end if
Set WshSHell = Nothing
Set FSO = Nothing
Set Args = Nothing
WScript.Quit(0)
Sub LastKey()
RegLPath="HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\LastKey"
RegLForm="REG_SZ"
WshSHell.RegWrite RegLPath ,"我的电脑\" & Key_Data,RegLForm
WshSHell.Run("Regedit")
End Sub |
|
ÿ
[ Last edited by baomaboy on 2008-3-24 at 10:14 PM ]
|
好多菩提树,好多明镜台。本来好多物,好多的尘埃。 |
|
2007-4-13 16:30 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
3 楼』:
下面用于试验:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
上面极易复制末尾的空格,所以代码中应加一句过滤掉首尾处的空格。
呵呵 原来不只是空格 连回车换行都有.......
[ Last edited by baomaboy on 2007-4-14 at 04:04 AM ]
|
好多菩提树,好多明镜台。本来好多物,好多的尘埃。 |
|
2007-4-13 16:36 |
|
|
r5288665
新手上路
积分 15
发帖 7
注册 2006-12-28
状态 离线
|
『第
4 楼』:
真的很难懂。。。。。
看不明白,楼主好厉害啊。
|
|
2007-4-13 18:14 |
|
|
kich
中级用户
积分 397
发帖 168
注册 2006-10-8
状态 离线
|
『第
5 楼』:
baomaboy强,我们跟在后面多学习!
纵观baomaboy的VBS,基本上分两类:注册表+文件(夹)操作!!
|
|
2007-4-14 00:22 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
6 楼』:
Quote: | Originally posted by kich at 2007-4-14 00:22:
baomaboy强,我们跟在后面多学习!
纵观baomaboy的VBS,基本上分两类:注册表+文件(夹)操作!! |
|
谢谢谢谢kich 我的电脑里除了文件夹和文件没有别的了 呵呵 只能操作操作它们俩了 ^_^
[ Last edited by baomaboy on 2007-4-14 at 04:15 AM ]
|
好多菩提树,好多明镜台。本来好多物,好多的尘埃。 |
|
2007-4-14 04:09 |
|
|
eech
高级用户
积分 906
发帖 346
注册 2006-7-10
状态 离线
|
『第
7 楼』:
下了。用过。还可以。但还是觉的麻烦。要是在任意文件上点击。可打开这“定位注册表”会更方便一些
|
|
2007-4-24 01:43 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
8 楼』:
Quote: | Originally posted by eech at 2007-4-24 01:43:
下了。用过。还可以。但还是觉的麻烦。要是在任意文件上点击。可打开这“定位注册表”会更方便一些 |
|
定位注册表应该并不是很频繁的操作,所以为了精简“文件夹”和“文件”的右键菜单才安装到“网上邻居”的右键的,
改下注册表路径很简单就能安装在“文件”的右键中了,
HKEY_CLASSES_ROOT\*\shell\
|
好多菩提树,好多明镜台。本来好多物,好多的尘埃。 |
|
2007-4-24 03:11 |
|
|
zhuangtugou
新手上路
积分 12
发帖 5
注册 2007-5-6
状态 离线
|
『第
9 楼』:
这个很 好啊
太厉害了
值得学习啊
|
|
2007-5-7 00:26 |
|
|
eech
高级用户
积分 906
发帖 346
注册 2006-7-10
状态 离线
|
『第
10 楼』:
能不能做到一复制到剪切板就自动打开
|
|
2007-5-9 16:46 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
11 楼』:
Quote: | Originally posted by eech at 2007-5-9 16:46:
能不能做到一复制到剪切板就自动打开 |
|
能做到,用个VBS常驻进程,没隔1,2秒判断是否为空即可,但要考虑后果,我相信用不了两天你就烦了,剪贴板操作多了,能有几次是专为定位注册表啊。
|
好多菩提树,好多明镜台。本来好多物,好多的尘埃。 |
|
2007-5-9 17:06 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
|
2007-5-9 17:10 |
|
|
eech
高级用户
积分 906
发帖 346
注册 2006-7-10
状态 离线
|
|
2007-5-9 18:49 |
|
|
moto88
新手上路
积分 4
发帖 11
注册 2006-6-20
状态 离线
|
|
2007-5-16 16:51 |
|
|
baomaboy
银牌会员
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
|
2007-5-16 19:01 |
|