第21讲VBSampVBS病毒.ppt
《第21讲VBSampVBS病毒.ppt》由会员分享,可在线阅读,更多相关《第21讲VBSampVBS病毒.ppt(46页珍藏版)》请在三一办公上搜索。
1、第21讲 VBS&VBS病毒,答疑地点:12J810|12J806网络答疑:QQ:252175436 答疑时间:周三上午9:30-11:00,内容提纲,什么是 VBScript在 HTML页中添加 VBScript 代码 VBScript 数据类型VBScript 变量VBScript 常量VBScript 运算符使用条件语句编码循环VBScript 过程VBScript 编码惯例VBS病毒,2023/8/17,2,1.什么是VBScript,VBScript是Visual Basic Script的简称,即 Visual Basic 脚本语言,有时也被缩写为VBS。是asp动态网页默认的编程
2、语言,配合asp内建对象和ADO对象,用户很快就能掌握访问数据库的asp动态网页开发技术。它具有原语言容易学习的特性。目前这种语言广泛应用于网页和ASP程序制作,同时还可以直接作为一个可执行程序。补充:ADO(ActiveX Data Objects,ActiveX数据对象)是Microsoft提出的应用程序接口(API)用以实现访问关系或非关系数据库中的数据。例如,如果您希望编写应用程序从DB2或Oracle数据库中向网页提供数据,可以将ADO程序包括在作为活动服务器页(ASP)的HTML文件中。当用户从网站请求网页时,返回的网页也包括了数据中的相应数据,这些是由于使用了ADO代码的结果。,
3、2023/8/17,3,1.什么是VBScript,VBScript主要的优点有:由于VBScript由网页浏览器解释执行,不需要增大服务器的负担。易学。在所有2000/98SE以后的Windows版本都可直接使用。可以使用其它程序和可使用的物件(尤其Microsoft Office)。缺点有:现在VBS无法作为电子邮件的附件了。Microsoft Outlook拒绝接受VBS为附件,收信人无法直接使用VBS附件。VBS的各种编辑程器不受欢迎。操作系统没有任何特别的保护设施。VBS程序与其它JS、EXE、BAT或CMD程序一样对待。操作系统没有监察恶意功能的能力。,2023/8/17,4,2.
4、在 HTML页中添加 VBScript 代码,VBScript 代码写在成对的 标记之间 代码的开始和结束部分都有 标记。LANGUAGE 属性用于指定所使用的脚本语言。由于浏览器能够使用多种脚本语言,所以必须在此指定所使用的脚本语言。注意 CanDeliver 函数被嵌入在注释标记()中。这样能够避免不能识别 标记的浏览器将代码显示在页面中。,2023/8/17,5,2 End Function-,2.在 HTML页中添加 VBScript 代码,SCRIPT 块可以出现在 HTML 页面的任何地方(BODY 或 HEAD 部分之中)。然而最好将所有的一般目标脚本代码放在 HEAD 部分中,
5、以使所有脚本代码集中放置。这样可以确保在 BODY 部分调用代码之前所有脚本代码都被读取并解码。,2023/8/17,6,订购 2 End Function-.,3.VBScript 数据类型,VBScript 只有一种数据类型,称为 Variant。Variant 是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。因为 Variant 是 VBScript 中唯一的数据类型,所以它也是 VBScript 中所有函数的返回值的数据类型。最简单的 Variant 可以包含数字或字符串信息。Variant 用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。这就是说,
6、如果使用看起来象是数字的数据,则 VBScript 会假定其为数字并以适用于数字的方式处理。与此类似,如果使用的数据只可能是字符串,则 VBScript 将按字符串处理。也可以将数字包含在引号()中使其成为字符串。,2023/8/17,7,3.VBScript 数据类型,Variant 子类型除简单数字或字符串以外,Variant 可以进一步区分数值信息的特定含义。例如使用数值信息表示日期或时间。此类数据在与其他日期或时间数据一起使用时,结果也总是表示为日期或时间。从 Boolean 值到浮点数,数值信息是多种多样的。Variant 包含的数值信息类型称为子类型。大多数情况下,可将所需的数据放
7、进 Variant 中,而 Variant 也会按照最适用于其包含的数据的方式进行操作。,2023/8/17,8,3.VBScript 数据类型,下表显示 Variant 包含的数据子类型:,2023/8/17,9,4.VBScript 变量,变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储脚本运行时可更改的程序信息。例如,可以创建一个名为 ClickCount 的变量来存储用户单击 Web 页面上某个对象的次数。使用变量并不需要了解变量在计算机内存中的地址,只要通过变量名引用变量就可以查看或更改变量的值。在 VBScript 中只有一个基本数据类型,即 Variant,因此
8、所有变量的数据类型都是 Variant。,2023/8/17,10,4.VBScript 变量,声明变量声明变量的一种方式是使用 Dim 语句、Public 语句和 Private 语句在脚本中显式声明变量。例如:Dim DegreesFahrenheit声明多个变量时,使用逗号分隔变量。例如:Dim Top,Bottom,Left,Right隐式声明变量另一种方式是通过直接在脚本中使用变量名这一简单方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行脚本时出现意外的结果。,2023/8/17,11,4.VBScript 变量,命名规则变量命名必须遵循 VBScr
9、ipt 的标准命名规则。变量命名必须遵循:第一个字符必须是字母。不能包含嵌入的句点。长度不能超过 255 个字符。在被声明的作用域内必须唯一。,4.VBScript 变量,变量的作用域与存活期变量的作用域由声明它的位置决定。如果在过程中声明变量,则只有该过程中的代码可以访问或更改变量值,此时变量具有局部作用域并被称为过程级变量。如果在过程之外声明变量,则该变量可以被脚本中所有过程所识别,称为 Script 级变量,具有脚本级作用域。变量存在的时间称为存活期。Script 级变量的存活期从被声明的一刻起,直到脚本运行结束。对于过程级变量,其存活期仅是该过程运行的时间,该过程结束后,变量随之消失。
10、在执行过程时,局部变量是理想的临时存储空间。可以在不同过程中使用同名的局部变量,这是因为每个局部变量只被声明它的过程识别。,4.VBScript 变量,给变量赋值创建如下形式的表达式给变量赋值:变量在表达式左边,要赋的值在表达式右边。例如:,Dim Myname,Myage,MyschoolMyname=“王小二”Myage=18Myschool=“广东教育学院”,4.VBScript 变量,数组变量多数情况下,只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量。有时候,将多个相关值赋给一个变量更为方便,因此可以创建包含一系列值的变量,称为数组变量。数组变量和标量变量是以相同的方式声明
11、的,唯一的区别是声明数组变量时变量名后面带有括号()。下例声明了一个包含 11 个元素的一维数组:Dim A(10)虽然括号中显示的数字是 10,但由于在 VBScript 中所有数组都是基于 0 的,所以这个数组实际上包含 11 个元素。在基于 0 的数组中,数组元素的数目总是括号中显示的数目加 1。这种数组被称为固定大小的数组。,4.VBScript 变量,在数组中使用索引为数组的每个元素赋值。从 0 到 10,将数据赋给数组的元素,如下所示:A(0)=256 A(1)=324 A(2)=100.A(10)=55 与此类似,使用索引可以检索到所需的数组元素的数据。例如:.SomeVaria
12、ble=A(8).,4.VBScript 变量,动态数组也可以声明动态数组,即在运行脚本时大小发生变化的数组。对数组的最初声明使用 Dim 语句或 ReDim 语句。但是对于动态数组,括号中不包含任何数字。例如:Dim MyArray()ReDim AnotherArray()要使用动态数组,必须随后使用 ReDim 确定维数和每一维的大小。,4.VBScript 变量,在下例中,ReDim 将动态数组的初始大小设置为 25,而后面的 ReDim 语句将数组的大小重新调整为 30,同时使用 Preserve 关键字在重新调整大小时保留数组的内容。ReDim MyArray(25).ReDim
13、Preserve MyArray(30)重新调整动态数组大小的次数是没有任何限制的,将数组的大小调小时,将会丢失被删除元素的数据。,5.VBScript 常数,常数是具有一定含义的名称,用于代替数字或字符串,其值从不改变。VBScript 定义了许多内部常数(由应用程序提供的常数。由于不能禁用内部常数,因此不能以相同的名称创建用户自定义常数。如Dim就不能定义为常数)。,5.VBScript 常数,创建常数您可以使用 Const 语句在 VBScript 中创建用户自定义常数。使用 Const 语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋原义值。例如:Const MyStri
14、ng=这是一个字符串。“Const MyAge=49 请注意字符串文字包含在两个引号(“”)之间。这是区分字符串型常数和数值型常数的最明显的方法。日期文字和时间文字包含在两个井号(#)之间。例如:Const CutoffDate=#6-1-97#,6.VBScript 运算符,VBScript 有一套完整的运算符,包括算术运算符、比较运算符、连接运算符和逻辑运算符。运算符优先级当表达式包含多个运算符时,将按预定顺序计算每一部分,这个顺序被称为运算符优先级。可以使用括号越过这种优先级顺序,强制首先计算表达式的某些部分。运算时,总是先执行括号中的运算符,然后再执行括号外的运算符。但是,在括号中仍遵
15、循标准运算符优先级。当表达式包含多种运算符时,首先计算算术运算符,然后计算比较运算符,最后计算逻辑运算符。所有比较运算符的优先级相同,即按照从左到右的顺序计算比较运算符。,6.VBScript 运算符,当乘号与除号同时出现在一个表达式中时,按从左到右的顺序计算乘、除运算符。同样当加与减同时出现在一个表达式中时,按从左到右的顺序计算加、减运算符。,6.VBScript 运算符,字符串连接(&)运算符不是算术运算符,但是在优先级顺序中,它排在所有算术运算符之后和所有比较运算符之前。Is 运算符是对象引用比较运算符。它并不比较对象或对象的值,而只是进行检查,判断两个对象引用是否引用同一个对象。,6.
16、VBScript 运算符,连接运算符(&)强制两个表达式进行字符串连接。result=expression1&expression2参数Result:任意变量。expression1:任意表达式。Expression2:任意表达式。说明任一 expression 不是字符串时,它将被转换为 String 子类型。如果两个表达式都为 Null,result 也为 Null。然而,如果仅有一个 expression 为 Null,则它和其他表达式连接时,按零长度字符串()处理。任何表达式为 Empty 时也按零长度字符串处理。,6.VBScript 运算符,Is 运算符比较两个对象引用变量。res
17、ult=object1 Is object2参数result:任意数值变量。object1:任意对象名。object2:任意对象名。说明如果 object1 和 object2 都引用同一个对象,则 result 为 True;否则 result 为 False。可以使用许多方法使两个变量引用同一个对象。,7.使用条件语句,条件语句 If.Then.Else 语句 Select Case 语句,7.使用条件语句,使用 If.Then.Else 进行判断If.Then.Else 语句用于计算条件是否为 True 或 False,并且根据计算结果指定要运行的语句。通常,条件是使用比较运算符对值或变
18、量进行比较的表达式。条件为 True 时运行语句,If value=0 Then AlertLabel.ForeColor=vbRed AlertLabel.Font.Bold=True AlertLabel.Font.Italic=True End If,7.使用条件语句,条件为 True 和 False 时分别运行某些语句可以使用 If.Then.Else 语句定义两个可执行语句块:条件为 True 时运行某一语句块,条件为 False 时运行另一语句块。,If value=0 Then AlertLabel.ForeColor=vbRed AlertLabel.Font.Bold=Tru
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 21 VBSampVBS 病毒
链接地址:https://www.31ppt.com/p-5759023.html