![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 03:20 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » Reg2VBS→vbs版 |
| 可打印版本 2,787 / 27 |
| 第1楼 baomaboy | 发表于 2007-06-01 12:27 |
| 银牌会员 发帖 554 积分 1,513 | |
|
Reg2VBS→vbs版 |
|
| 第2楼 wert123 | 发表于 2007-06-01 14:01 |
| 中级用户 发帖 135 积分 301 | |
|
辛苦了啊,baomaboy大师又一个vbs版的好东东
不过最好把源码还原出来吧 reg转换生成的vbs也能还原的更清楚些吗 |
|
| 第3楼 zhoushijay | 发表于 2007-06-01 14:09 |
| 高级用户 发帖 375 积分 845 | |
|
让我猜猜你的原理:
应该是把里面的注册表路径提取出来放入变量 a 然后再把这个reg文件改写成, ws.write a 名字再换成*.VBS 是这样的吗? |
|
| 第4楼 baomaboy | 发表于 2007-06-01 14:16 |
| 银牌会员 发帖 554 积分 1,513 | |
Originally posted by wert123 at 2007-6-1 14:01: 算不得什么好东东,只是简单得文本读取创建而已,并且没什么实用价值,如果不是因为你不喜欢reg只喜欢vbs这个原因此东东都没必要存在,另外你说reg转vbs后加密了,其实没有,从那个转换后得文件完全可以推出我的源码,这也是不加密转换后代码得原因。 源码加密还是老原因,模版、无用代码、每次都要引起口舌。。。。 |
|
| 第5楼 baomaboy | 发表于 2007-06-01 14:32 |
| 银牌会员 发帖 554 积分 1,513 | |
Originally posted by zhoushijay at 2007-6-1 14:09: 基本正确 |
|
| 第6楼 zhoushijay | 发表于 2007-06-01 14:35 |
| 高级用户 发帖 375 积分 845 | |
|
O 也
|
|
| 第7楼 wert123 | 发表于 2007-06-01 15:26 |
| 中级用户 发帖 135 积分 301 | |
|
源码加密还是老原因,老原因是什么
麻烦把源码贴出来吧,我不会推,也不会转 我O 也不了啊 |
|
| 第8楼 baomaboy | 发表于 2007-06-01 15:51 |
| 银牌会员 发帖 554 积分 1,513 | |
|
得,看下面的吧还是。。。。。。
[ Last edited by baomaboy on 2007-6-1 at 04:12 PM ] |
|
| 第9楼 slore | 发表于 2007-06-01 16:04 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
Rem EnCode_4.0 By baomaboy
'reg2vbs.vbs by baomaboy 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) InsFullName = FSO.BuildPath(InsPathFileName) LnkPathNT = WshSHell.SpecialFolders(2) LnkPath9X = WshSHell.SpecialFolders(14) LnkPathAll = WshSHell.SpecialFolders("SendTo") OtherFileName = "Manage_New.txt" OtherFilePath = FSO.GetSpecialFolder(2) TemFileName = "无标题":TemFilePath = FSO.GetSpecialFolder(2) Copyright = "玲珑科技" Email = "Email:fty1995@163.com" InsTitle = "Reg2Vbsbybaomaboy" RegPath1 = "HKEY_CLASSES_ROOT\regfile\shell\RegToVbs\" RegValue1 = "转换为VBS脚本文件" RegForm1 = "REG_SZ" RegPath2 = "HKEY_CLASSES_ROOT\regfile\shell\RegToVbs\command\" RegValue2 = "wscript.exe""""%L""" 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.RegWriteRegPath2,RegValue2,RegForm2 FSO.GetFile(FileFullName).Copy(InsFullName) WshSHell.popup "添加脚本文件:" + vbLf + InsFullName + vbLf + "添加注册表项:" + _ Chr(34) + RegPath1 + Chr(34) + vbLf & CloseTime & " 秒钟后本窗口将自动关闭!" + vbLf + vbLf + _ " 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 "删除脚本文件:" + vbLf + InsFullName + vbLf + "删除注册表项:" + _ Chr(34) + RegPath1 + Chr(34) + vbLf & CloseTime & " 秒钟后本窗口将自动关闭!" + vbLf + vbLf + _ " Copyright(C)" + Copyright + " " & QQ & " " + Email,CloseTime,"卸载成功 - " + InsTitle + " - " + Copyright, 0 + 64 End If If intAnswer = vbCancel Then End If Else If Args.count = 0 Then wscript.quit Set ReadFile = FSO.OpenTextFile(Args(0),1,False, - 1) ReadAllText = ReadFile.ReadAll ReadFile.Close If Mid(ReadAllText,1,3) <> "Win" And Mid(ReadAllText,1,3) <> "REG" Then Set ReadFile = FSO.OpenTextFile(Args(0),1) ReadAllText = ReadFile.ReadAll ReadFile.Close End If For i = 1 To Len(ReadAllText) TempNum = Asc(Mid(ReadAllText,i,1)) If TempNum = 34 Then TempNum = 18 ElseIf TempNum = 13 Then TempNum = 28 ElseIf TempNum = 10 Then TempNum = 29 End If ThisText1 = ThisText1 & Chr(TempNum) Next Set WriteFile = FSO.OpenTextFile(Args(0) & ".VBS",2,True) WriteFile.WriteLine("On Error Resume Next:Dim WshSHell,FSO,Reg2Vbs:Set WshSHell = WScript.CreateObject(""WScript.Shell""):Set FSO = CreateObject(""Scripting.FileSystemObject""):Reg2Vbs=""" & ThisText1 & """") WriteFile.WriteLine("Execute(""For i=1 To Len(Reg2Vbs)""&vbCrLf&""TempNum = Asc(Mid(Reg2Vbs,i,1))""&vbCrLf&""If TempNum = 28 Then""&vbCrLf&""TempNum = 13""&vbCrLf&""ElseIf TempNum = 29 Then""&vbCrLf&""TempNum = 10""&vbCrLf&""elseif TempNum=18 Then""&vbCrLf&""TempNum = 34""&vbCrLf&""End If""&vbCrLf&""ThisText2 = ThisText2 & chr(TempNum)""&vbCrLf&""Next"")") WriteFile.WriteLine("Set RegFile = FSO.OpenTextFile(FSO.BuildPath(FSO.GetSpecialFolder(2),""Temp.reg""),2,True):RegFile.WriteLine(ThisText2):RegFile.Close:WshSHell.Run(""regedit /s ""&FSO.BuildPath(FSO.GetSpecialFolder(2),""Temp.reg"")):WScript.Sleep 500:FSO.DeleteFile FSO.BuildPath(FSO.GetSpecialFolder(2),""Temp.reg"")") WriteFile.Close End If Set WshSHell = Nothing:SetFSO = Nothing:Set Args = Nothing:WScript.Quit(0) [ Last edited by slore on 2007-6-2 at 06:43 PM ] |
|
| 第10楼 wert123 | 发表于 2007-06-01 16:09 |
| 中级用户 发帖 135 积分 301 | |
|
谢谢啊
[ Last edited by wert123 on 2007-6-1 at 04:11 PM ] |
|
| 第11楼 slore | 发表于 2007-06-01 16:31 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
For i = 1 To Len(ReadAllText)
TempNum = Asc(Mid(ReadAllText,i,1)) If TempNum = 34 Then TempNum = 18 ElseIf TempNum = 13 Then TempNum = 28 ElseIf TempNum = 10 Then TempNum = 29 End If ThisText1 = ThisText1 & Chr(TempNum) Next 这个部分……为什么不用replace函数?引号的话转义成双引号就好了。 这个原理简直………… 你还说zhoushijay的基本是对的=。=一点都不搭边。。。 |
|
| 第12楼 baomaboy | 发表于 2007-06-01 16:32 |
| 银牌会员 发帖 554 积分 1,513 | |
|
slore 兄的代码着色 是论坛的功能吗? 好像还没见别人用啊?还是你自己做的。真不错。
|
|
| 第13楼 slore | 发表于 2007-06-01 16:35 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
自己做的……问题还很多,所以没有发布。。。对我自己的测试代码行不通自己还要手动改好多地方(自己想的测试代码太BT了,自己有点挑剔吧,要做就做好,不然不想做)……
比如End If要上2次相同的颜色……这个要改。。。最近都没时间…… 还有_换行的问题…… |
|
| 第14楼 baomaboy | 发表于 2007-06-01 16:39 |
| 银牌会员 发帖 554 积分 1,513 | |
|
最初是加密reg的(后删掉了那句),所以没考虑用replace。
zhoushijay说,读给变量,再写回去reg,基本思路就是这样吗。只是他说的笼统一些怎么会不搭边啊。 [ Last edited by baomaboy on 2007-6-1 at 04:49 PM ] |
|
| 第15楼 baomaboy | 发表于 2007-06-01 16:46 |
| 银牌会员 发帖 554 积分 1,513 | |
Originally posted by slore at 2007-6-1 16:35: 希望slore兄早日完成,若做成本论坛的插件,那可是。。。。。 |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |