ฉันมีไฟล์vbsนี้ มีคนส่งมาให้ฉันทางอีเมล ใครสามารถบอกฉันไฟล์นี้ทำอะไรได้บ้าง
dim M
M = "Chinese names"
S = ""
Dim N
n = 0
dim NN
NN = "ede"
do until n = Len(M)
n = n + 1
S = S & Chr(AscW(Mid(M, N, 1)) - &H9000 + len(NN))
loop
Execute S
ฉันมีไฟล์vbsนี้ มีคนส่งมาให้ฉันทางอีเมล ใครสามารถบอกฉันไฟล์นี้ทำอะไรได้บ้าง
dim M
M = "Chinese names"
S = ""
Dim N
n = 0
dim NN
NN = "ede"
do until n = Len(M)
n = n + 1
S = S & Chr(AscW(Mid(M, N, 1)) - &H9000 + len(NN))
loop
Execute S
คำตอบ:
คำแนะนำแรก:
เมื่อคุณได้รับไฟล์ vbscript ที่ไม่รู้จักเช่นนี้สิ่งแรกคือจะไม่เรียกใช้งานจนกว่าคุณจะเข้าใจว่าไฟล์นี้สามารถทำงานได้
คำแนะนำที่สอง:
หากคุณต้องการที่จะแสดงสิ่งที่มันดำเนินการเพียงแค่แก้ไขด้วยNotepadหรือNotepad ++และค้นหาคำนี้Execute
และแทนที่ด้วยMsgBox
เพื่อให้ได้สิ่งที่สคริปต์นี้สามารถทำได้!
ฉันแก้ไขข้อผิดพลาดและฉันได้เพิ่มฟังก์ชั่นในการเขียนรหัสลงในไฟล์ข้อความและคุณจะได้รับตัวอักษรจีน (ยูนิโค้ด) เช่นนี้
灆火灬灱灨灶灨瀣灱灤灰灨灶
'************************************Added by Hackoo************************************
Set fso = CreateObject("Scripting.FileSystemObject")
Set ws = CreateObject("WScript.Shell")
LogFile = Left(Wscript.ScriptFullName, InstrRev(Wscript.ScriptFullName, ".")) & "txt"
If fso.FileExists(LogFile) Then
fso.DeleteFile(LogFile)
End If
'****************************************************************************************
dim M
M = "Chinese names"
S = ""
Dim N
n = 0
dim NN
NN = "ede"
do until n = Len(M)
n = n + 1
S = S & ChrW(AscW(Mid(M, N, 1)) - &H9000 + len(NN))
loop
'Just to popup a msgbox to show the chinese character in unicode instead of using Execute
Msgbox S
'Write the contents of the variable S into a text file
Call WriteLog(S,LogFile)
'To open the LogFile with notepad
ws.run LogFile
'************************************Added by Hackoo************************************
'Function to write into text file with unicode
Sub WriteLog(strText,LogFile)
Dim fso,ts
Const ForAppending = 8
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.OpenTextFile(LogFile,ForAppending,True,-1)
ts.WriteLine strText
ts.Close
End Sub
'*****************************************************************************************
ฉันไม่มั่นใจว่ามันจะทำอะไรจริง ๆ แต่มันเป็นความตั้งใจอย่างแน่นอนที่ดูหลบ มันสร้างสตริงที่มีความยาว 14 ตัวอักษรที่บรรจุสิ่งที่ดูเหมือนว่ามีจุดประสงค์เพื่อให้มีอักขระไบนารี่จากนั้นจึงเรียกใช้งานสตริงนั้นในที่สุด ตอนนี้ฉันไม่รู้อะไร แต่มันไม่ใช่สิ่งที่ฉันจะลองด้วยตัวเอง
อย่างไรก็ตามฉันคิดว่ามันมีข้อผิดพลาด ทักษะ VBS ของฉันค่อนข้างเก่าและไม่แน่นอนในปัจจุบัน แต่ฉันไม่คิดว่าจะมีฟังก์ชั่น AscW - Asc ใช่ แต่ใน VBS นี่จะเป็นฟังก์ชั่น Wide character อยู่ดี
หากเพื่อนส่งให้คุณฉันจะถือว่าเป็นความพยายามที่ไม่ดีที่มีอารมณ์ขัน