|
baomaboy
银牌会员
    
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『楼 主』:
Reg2VBS→vbs版
|

|
|
2007-6-1 12:27 |
|
|
wert123
中级用户
  
积分 301
发帖 135
注册 2007-5-15
状态 离线
|
『第
2 楼』:
辛苦了啊,baomaboy大师又一个vbs版的好东东
不过最好把源码还原出来吧
reg转换生成的vbs也能还原的更清楚些吗
|
|
2007-6-1 14:01 |
|
|
zhoushijay
高级用户
    Autowalk
积分 845
发帖 375
注册 2007-3-3
状态 离线
|
『第
3 楼』:
让我猜猜你的原理:
应该是把里面的注册表路径提取出来放入变量 a
然后再把这个reg文件改写成, ws.write a 名字再换成*.VBS
是这样的吗?
|

你好,脚本专家!
<a target=blank href=tencent://message/?uin=29654761&Site=www.111.com&Menu=yes><img border="0" SRC=http://wpa.qq.com/pa?p=1:29654761:5 alt="点击这里给我发消息"></a> |
|
2007-6-1 14:09 |
|
|
baomaboy
银牌会员
    
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
4 楼』:
Originally posted by wert123 at 2007-6-1 14:01:
辛苦了啊,baomaboy大师又一个vbs版的好东东
不过最好把源码还原出来吧
reg转换生成的vbs也能还原的更清楚些吗 算不得什么好东东,只是简单得文本读取创建而已,并且没什么实用价值,如果不是因为你不喜欢reg只喜欢vbs这个原因此东东都没必要存在,另外你说reg转vbs后加密了,其实没有,从那个转换后得文件完全可以推出我的源码,这也是不加密转换后代码得原因。
源码加密还是老原因,模版、无用代码、每次都要引起口舌。。。。
|

|
|
2007-6-1 14:16 |
|
|
baomaboy
银牌会员
    
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
5 楼』:
Originally posted by zhoushijay at 2007-6-1 14:09:
让我猜猜你的原理:
应该是把里面的注册表路径提取出来放入变量 a
然后再把这个reg文件改写成, ws.write a 名字再换成*.VBS
是这样的吗? 基本正确
|

|
|
2007-6-1 14:32 |
|
|
zhoushijay
高级用户
    Autowalk
积分 845
发帖 375
注册 2007-3-3
状态 离线
|
『第
6 楼』:
O 也
|

你好,脚本专家!
<a target=blank href=tencent://message/?uin=29654761&Site=www.111.com&Menu=yes><img border="0" SRC=http://wpa.qq.com/pa?p=1:29654761:5 alt="点击这里给我发消息"></a> |
|
2007-6-1 14:35 |
|
|
wert123
中级用户
  
积分 301
发帖 135
注册 2007-5-15
状态 离线
|
『第
7 楼』:
源码加密还是老原因,老原因是什么
麻烦把源码贴出来吧,我不会推,也不会转
我O 也不了啊
|
|
2007-6-1 15:26 |
|
|
baomaboy
银牌会员
    
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
8 楼』:
得,看下面的吧还是。。。。。。
[ Last edited by baomaboy on 2007-6-1 at 04:12 PM ]
|

|
|
2007-6-1 15:51 |
|
|
slore
铂金会员
      
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
『第
9 楼』:
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 ]
|
|
2007-6-1 16:04 |
|
|
wert123
中级用户
  
积分 301
发帖 135
注册 2007-5-15
状态 离线
|
『第
10 楼』:
谢谢啊
[ Last edited by wert123 on 2007-6-1 at 04:11 PM ]
|
|
2007-6-1 16:09 |
|
|
slore
铂金会员
      
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
『第
11 楼』:
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的基本是对的=。=一点都不搭边。。。
|
|
2007-6-1 16:31 |
|
|
baomaboy
银牌会员
    
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
12 楼』:
slore 兄的代码着色 是论坛的功能吗? 好像还没见别人用啊?还是你自己做的。真不错。
|

|
|
2007-6-1 16:32 |
|
|
slore
铂金会员
      
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
『第
13 楼』:
自己做的……问题还很多,所以没有发布。。。对我自己的测试代码行不通自己还要手动改好多地方(自己想的测试代码太BT了,自己有点挑剔吧,要做就做好,不然不想做)……
比如End If要上2次相同的颜色……这个要改。。。最近都没时间……
还有_换行的问题……
|
|
2007-6-1 16:35 |
|
|
baomaboy
银牌会员
    
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
14 楼』:
最初是加密reg的(后删掉了那句),所以没考虑用replace。
zhoushijay说,读给变量,再写回去reg,基本思路就是这样吗。只是他说的笼统一些怎么会不搭边啊。
[ Last edited by baomaboy on 2007-6-1 at 04:49 PM ]
|

|
|
2007-6-1 16:39 |
|
|
baomaboy
银牌会员
    
积分 1513
发帖 554
注册 2005-12-30
状态 离线
|
『第
15 楼』:
Originally posted by slore at 2007-6-1 16:35:
自己做的……问题还很多,所以没有发布。。。对我自己的测试代码行不通自己还要手动改好多地方(自己想的测试代码太BT了,自己有点挑剔吧,要 ... 希望slore兄早日完成,若做成本论坛的插件,那可是。。。。。
|

|
|
2007-6-1 16:46 |
|