[ Last edited by baomaboy on 2007-6-1 at 04:12 PM ]作者: slore 时间: 2007-6-1 16:04 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)
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)
Set WshSHell = Nothing:SetFSO = Nothing:Set Args = Nothing:WScript.Quit(0)
[ Last edited by slore on 2007-6-2 at 06:43 PM ]作者: wert123 时间: 2007-6-1 16:09 谢谢啊
[ Last edited by wert123 on 2007-6-1 at 04:11 PM ]作者: slore 时间: 2007-6-1 16:31 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函数?引号的话转义成双引号就好了。
VB里我是
Open strFileName For Binary As #iReadNumber
Get #iReadNumber, 1, Ucodehead
Get #iReadNumber, 3, mem
Close #iReadNumber
If Ucodehead(0) = 255 And Ucodehead(1) = 254 Then OutStr = CStr(mem) Else OutStr = StrConv(mem, vbUnicode)