VBScript腳本編程_第1頁
VBScript腳本編程_第2頁
VBScript腳本編程_第3頁
VBScript腳本編程_第4頁
VBScript腳本編程_第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、VBScript腳本編程VBS Edit破解n安裝完后需要注冊,出現(xiàn)下圖:VBS Edit破解n雙擊Keygen.exe,彈出如下窗口:VBS Edit破解n點擊“Generate”,在Serial 中,將序列號復制,粘貼到上述窗口中,點擊Evaluate,彈出如下窗口:VBS Edit破解n在該窗口中選擇“Activate manually”n在Keygen 窗口中復制Activation 中的內(nèi)容,粘貼到上圖中的輸入框中,點擊OK。VBScript簡介nVBS,即Microsoft Visual Basic Scripting Edition,它是Microsoft Visual Basi

2、c語言的一個子集,它并不是一個完整的程序設計語言,僅包含語言中的一些基本功能。VBScript的最大優(yōu)點是:用純文本建立、直接包含在HTML文檔中、編輯和修改都十分便利。 第一個VBScript腳本nSet objshell = CreateObject(Shell.Application)nSet objNS = space(&h2f)nSet colitems = objNS.itemsnFor Each objitem In colitemsnWScript.Echo nNext編譯環(huán)境nVBS Editn安裝方法VBS腳本的注釋nVbs

3、中使用單引號來注釋” ”,注釋的信息在vbsedit編輯環(huán)境中顯示為綠色。顯示一條信息Msgbox 夜深人靜,小心身后啊VBS基礎知識n1.腳本的注釋n格式一: Rem 注釋內(nèi)容n格式二: 注釋內(nèi)容VBS基礎知識n2.將單行語句分成多行n在編寫程序代碼時,有的語句可能會很長,為了在閱讀和對程序查錯時直觀、方便,可使用續(xù)行符“ -”(由一個空格和一個下劃線組成),將長的語句分成多行書寫。VBS基礎知識n3.使用不同進制的數(shù)字n在VBScript中,除了可以使用默認的十進制來表示數(shù)字外,還允許使用十六進制或八進制來表示數(shù)字。對于不同進制的數(shù),VBScript在表達方式上有明確規(guī)定,即十六進制數(shù)要加

4、前綴H(如H9),八進制數(shù)要加前綴0(數(shù)字零)或&O(字母O)(如011或&O11),十進制數(shù)不用加任何前綴。VBS基礎知識n4. VBScript語句中的英文字母不區(qū)分大小寫,VBScript腳本代碼是一種純文本,可以用任何一種文本編輯器編寫。VBS的數(shù)據(jù)類型n在Visual Basic、C+等高級語言中,數(shù)據(jù)類型都是分為整數(shù)、字符等不同的類型,但在VBScript中,只有一種數(shù)據(jù)類型,稱為Variant(變體類型)。 nVariant既能表示數(shù)字,又能表示字符,還能表示其他的類型,vbs 在執(zhí)行時會自動識別和轉(zhuǎn)換類型。n所以它也是VBScript 中所有函數(shù)的返回值的數(shù)據(jù)類型。VBS的數(shù)據(jù)

5、類型n一般情況下VBScript也會根據(jù)代碼的上下文自動轉(zhuǎn)換數(shù)據(jù)的子類型。例如:Variable_1=”2001”,這里Variable_1作為一個字符串變量來工作,而如果下面有Variable_2=Variable_13,這時VBScript就會自動將Variable_1轉(zhuǎn)換成整數(shù)變量,然后參與運算。但有時候,也會遇到一些數(shù)據(jù)類型不匹配造成的錯誤。這時,可以使用VBScript的轉(zhuǎn)換函數(shù)來強制轉(zhuǎn)換數(shù)據(jù)的子類型。 (見VBScript幫助文件)VBS的數(shù)據(jù)類型Dim aa=2001 VBScript會將它當成整數(shù)對待a=”2001” VBScrint會將它當成字符串對待a=20.01 VBSc

6、ript會將它當成小數(shù)對待a=false VBScript會將它當成一個布爾值 VBS的數(shù)據(jù)類型n可以使用VarType 來看看它到底是什么類型的,如下面的代碼:Dim VarTypeCheckVarTypeCheck = VarType(123)MsgBox VarTypeCheck 返回2 表示整型VarTypeCheck = VarType(123)MsgBox VarTypeCheck 返回8 表示字符型子類型子類型描述描述Empty未初始化的 Variant。對于數(shù)值變量,值為 0;對于字符串變量,值為零長度字符串 ()。Null不包含任何有效數(shù)據(jù)的 Variant。Boolean包

7、含 True 或 False。Byte包含 0 到 255 之間的整數(shù)。Integer包含 -32,768 到 32,767 之間的整數(shù)。Currency-922,337,203,685,477.5808 到 922,337,203,685,477.5807。Long包含 -2,147,483,648 到 2,147,483,647 之間的整數(shù)。Single包含單精度浮點數(shù),負數(shù)范圍從 -3.402823E38 到 -1.401298E-45,正數(shù)范圍從 1.401298E-45 到 3.402823E38。Double包含雙精度浮點數(shù),負數(shù)范圍從 -1.79769313486232E308

8、到 -4.94065645841247E-324,正數(shù)范圍從 4.94065645841247E-324 到 1.79769313486232E308。Date (Time)包含表示日期的數(shù)字,日期范圍從公元 100 年 1 月 1 日到公元 9999 年 12 月 31 日。String包含變長字符串,最大長度可為 20 億個字符。Object包含對象。Error包含錯誤號。VBS常量n聲明常量的意義就在于可以在程序的任何部分使用該常量來代表特定的值,從而方便程序的編寫和修改。例如在程序中定義 Const PI=3.1415926 Const ConstDate=#2001-1-12# Ms

9、gbox PIVBS常量n1文字常量n(1)字符串常量:用雙引號作為定界符,由ASCII碼字符組成(除雙引號和回車符外),長度不能超過20億個字符。例如:中華人民共和國、1233.45等。n(2)數(shù)值常量:包括整型數(shù)、長整型數(shù)和浮點數(shù)。例如:0、300、-4125、&H85(表示十六進制數(shù)85)、&O226(表示八進制數(shù)226)、1.23E8、3.54E-5等。n(3)日期時間型常量:用#號括起來。例如:#2001-3-15#、#2003-4-20 8:38:25 AM#等。VBS常量n2符號常量常量名稱常量名稱常量含義常量含義TrueTrue表示布爾真值表示布爾真值False表示布爾假值表示

10、布爾假值Null表示空值表示空值Empty表示沒有初始化之前的值表示沒有初始化之前的值vbCr表示回車表示回車vbCrLf表示回車表示回車/ /換行換行vbTab表示制表符表示制表符VBS變量n1.變量聲明變量聲明n聲明變量的一種方式是使用Dim、Redim、Public和 Private在腳本中顯式聲明變量。如:Dim namen注意:別亂加分號!VBS變量n(1)Dimn格式:Dim 變量名稱例如:Dim DegreesFahrenheitn聲明多個變量時,使用逗號分隔變量。例如: Dim Top, Bottom, Left, RightVBS變量n(2)RedimnRedim語句是專用來

11、定義數(shù)組的。當需要根據(jù)數(shù)據(jù)的增加和刪除來擴大或縮小數(shù)組的大小時,可通過Redim語句來實現(xiàn)。 VBS變量下面是一個擴大數(shù)組的簡單格式:Dim datanum程序代碼Redim Preserve datanum(20)Redim Preserve datanum(20)語句將數(shù)組的元素擴大到20。 默認的情況下,使用Redim語句的同時會清除數(shù)組中的所有值。而使用Preserve關鍵字可以將所有現(xiàn)存的數(shù)據(jù)保存下來,并添加新的空白單元;如果縮小了數(shù)組的大小,那么被減去的單元中的數(shù)據(jù)也會丟失。VBS變量n(3)PublicnPublic關鍵字用于定義全局型變量。格式:Public 變量名稱例如:Pu

12、blic a,bn和Dim一樣,Public可以聲明變量,并可以一次聲明多個變量,也可以聲明一維或多維數(shù)組。所不同的是Public關鍵字定義的變量是全局變量。VBS變量n(4)PrivatePrivate關鍵字可以定義變量、一次定義多個變量、定義一維或多維數(shù)組,不同的只是變量的作用范圍不同。n下面列出了使用上面語句或關鍵字定義的變量的可能作用范圍: lDim:整個腳本程序或過程、函數(shù)中。 lRedim:整個腳本程序或過程、函數(shù)中。 lPublic:整個腳本程序。 lPrivate:過程或函數(shù)中。VBS變量n另一種聲明方式是通過直接在腳本中使用變量名這一簡單方式隱式聲明變量。這不是一個好習慣,因

13、為這樣有時會由于變量名被拼錯而導致在運行腳本時出現(xiàn)意外的結果。因此,最好使用 Option Explicit 語句顯式聲明所有變量,并將其作為腳本的第一條語句。這樣,如果以后拼寫錯變量名,VBScript就會提醒你這個變量沒有聲明,而避免出現(xiàn)由于拼寫錯誤所造成的問題。 VBS變量option ExplicitDim ij=0VBS變量n2.變量命名規(guī)則n變量的名字必須以字母開頭。n名字中不能含有句號。n名字不能超過255個字符。n名字不能和VBScript中的關鍵字同名。n變量名在被聲明的作用域內(nèi)必須惟一。VBS變量n3.變量的作用域n指的是變量的有效范圍,在VBScript中分為過程內(nèi)有效和

14、整個程序中都有效。在變量過程內(nèi)部聲明的變量稱為過程級變量或局部變量,這樣的變量只有在聲明它們的過程中才能使用,即無法在過程外部訪問;過程外部聲明的變量稱為腳本級變量或全局變量。VBS變量nsub ss()ndim x 聲明x局部變量nx=22nMsgBox xnend subndim x 聲明x全局變量nx=1ncall ss 調(diào)用ss過程,無參數(shù)nMsgBox x數(shù)組nVBScript中的數(shù)組有以下幾個特點:n使用數(shù)組之前要先進行定義,然后才能使用。通常用Dim語句來定義數(shù)組。n數(shù)組下標的下界一律從0開始。n一個數(shù)組中可以含有各種子類型的數(shù)據(jù)元素。n在VBScript中,數(shù)組分為兩種類型,即

15、靜態(tài)數(shù)組和動態(tài)數(shù)組。 數(shù)組n1靜態(tài)數(shù)組n靜態(tài)數(shù)組可分為一維數(shù)組、二維數(shù)組或多維數(shù)組。數(shù)組的維數(shù)和大小由數(shù)組名之后緊跟的括號中的數(shù)字的個數(shù)和數(shù)值的大小來決定。靜態(tài)數(shù)組在編譯時開辟內(nèi)存區(qū),因此它的大小在運行時是不可以改變的。n2動態(tài)數(shù)組 n定義一般分兩步:首先用Dim語句聲明一個括號內(nèi)不包含下標的數(shù)組,然后在使用數(shù)組之前用ReDim語句根據(jù)實際需要重新定義下標值。也可以用ReDim語句直接定義數(shù)組。運行時大小可變。 數(shù)組n定義一個固定長度的數(shù)組 Dim A(10) 包含11個元素n下例中,MyTable 變量是一個有6行和11列的二維數(shù)組:Dim MyTable(5, 10) 數(shù)組Dim MyAr

16、ray(5)Dim lengthMyArray(0) = 0MsgBox MyArray(0)返回指定數(shù)組維數(shù)的最大可用下標length = UBound(MyArray)MsgBox length數(shù)組n也可以聲明動態(tài)數(shù)組,即在運行腳本時大小發(fā)生變化的數(shù)組。n對數(shù)組的最初聲明使用Dim語句或ReDim語句。但是對于動態(tài)數(shù)組,括號中不包含任何數(shù)字。如: Dim MyArray() ReDim AnotherArray()數(shù)組n要使用動態(tài)數(shù)組,必須隨后使用Redim確定維數(shù)和每一維的大小。 Redim MyArray(25) Redim Preserve MyArray(30)n重新調(diào)整動態(tài)數(shù)組大

17、小的次數(shù)是沒有任何限制的。但是應注意:將數(shù)組的大小調(diào)小時,將會丟失被刪除元素的數(shù)據(jù)。數(shù)組數(shù)組n動態(tài)數(shù)組的例子。Dim MyArray()ReDim MyArray(3)Dim lengthMyArray(0) = 我MyArray(1) = 是MyArray(2) = 小MyArray(3) = “王ReDim Preserve MyArray(5)MyArray(4) = 老MyArray(5) = 師返回指定數(shù)組維數(shù)的最大可用下標length = UBound(MyArray)For i=0 To lengthMsgBox MyArray(i)NextVBS賦值語句n多個變量附相同的值時,

18、不能寫成: 變量1=變量2=表達式n聲明變量時不能同時賦值,下面語句是錯誤的: Dim a=2n對對象賦值要使用set set rs=server.CreateObject(“ADODB.Recordset”)VBS運算符nVBScript的操作符包括算術運算符、比較運算符、連接運算符和邏輯運算符。n1.算術運算符:+、-、 *、/、取余Mod、求冪()等。n2.邏輯運算符:與And、或Or、非Not和Xor。其返回值為:真(True)、假(False)VBS運算符n3. 字符串(連接)運算符:或+n【例】result=expression1 expression2n說明:將兩個表達式進行字符

19、串連接;當任意一表達式不是字符串時,它將被轉(zhuǎn)換為String類型;如果兩個表達式都為Null,result也為Null;如果僅有一個為Null或任意一個表達式為Empty,則它和其他表達式連接時,按零長度字符串( )處理。n【例】result=expression1 + expression2n說明:如果兩個表達式都是數(shù)值,則+運算符表示相加;如果兩個表達式都是字符串,則表示連接;如果一個表達式為字符串,一個表達式為數(shù)值,則表示相加(都是數(shù)字)。(所以一般仍使用&運算符來進行字符串的連接,這是因為在使用+運算符時,可能無法確定是執(zhí)行加法還是字符串連接)。VBS運算符 &用于強制連接兩個表達式,

20、合成一個字符串。 例:dim a,b,ab a=“hello_” b=123 ab=a&b /* ab的值為“hello_123” */ 任一表達式不是字符串時,它將被轉(zhuǎn)換為 String 子類型。 也可以使用 + 運算符連接兩個字符串,建議使用 & 進行字符串的連接,以避免混淆。在下面的代碼中要注意,我們一般連接字符時要用&,不要用+,這樣可以避免混亂Dim num1,num2,str1,str2Dim sum,strnum1 = 1num2 = 2str1 = 小str2 = 強sum = num1+num2 MsgBox sumsum = num1+ str1 MsgBox sumstr

21、 = str1 & str2MsgBox strVBS條件語句條件語句n在VBScript中,可以使用兩種條件語句來控制腳本流程,分別是IfThenElse語句,和Select Case語句。前者可以按需要進行嵌套。 VBS條件語句條件語句if time#5:00:00PM# then greeting=“晚上好!”end if。 VBS條件語句條件語句Dim contidion,strcontidion = 你是億萬富翁嗎?str = 我是窮光蛋If contidion = str ThenMsgBox 就是你了ElseMsgBox 等等在說吧End ifVBS條件語句條件語句Dim str

22、str = 我愛美人Select Case strCase 我愛江山 MsgBox 我愛江山Case 我愛美人 MsgBox 我愛美人Case Else MsgBox 我什么都不愛End selectVBS循環(huán)語句循環(huán)語句n在VBScript中,可以使用多種循環(huán)語句來表達循環(huán),包括:nDo Loop : 當(或直到)條件為True時循環(huán)nWhileWend: 當條件為True時循環(huán)nForNext: 指定循環(huán)次數(shù),使用計數(shù)器重復執(zhí)行語句nFor Each Next: 對于集合中的每項或數(shù)組中的每個元素,重復執(zhí)行一組語句VBS循環(huán)語句循環(huán)語句For next 用法Dim MyName,MyWri

23、ting,iMyName = “呵呵MyWriting = “希望大家多多支持我的課程For i=0 To 1MsgBox MyNameMsgBox MyWritingNextVBS循環(huán)語句循環(huán)語句for each 的用法Dim MyWriting(1)MyWriting(0) = “呵呵MyWriting(1)= “希望大家多多支持我的課For Each element In MyWritingMsgBox elementNextVBS循環(huán)語句循環(huán)語句do loop 的用法Dim ageage = 23Do Until age = 100age= age+1LoopMsgBox “好好學習,

24、天天向上VBS循環(huán)語句循環(huán)語句while 的用法Dim moneymoney = 2While money 0money = money -1WendMsgBox 我身無分文了Sub和Function nSub和Function都是過程,但是Sub不能返回值,而Function可以返回值。n對Function的調(diào)用只需要輸入過程名及參數(shù)即可,對Sub的調(diào)用可以使用Call語句的方式,也可以使用直接輸入過程名及參數(shù)的方式。但是如果使用Call語句,則需要把參數(shù)用括號括起來 Sub和Function 定義Add子過程Sub AddMethod(num)tmp = num+100End Sub 調(diào)用

25、AddMethod子過程AddMethod 200 使用Call語句調(diào)用Call AddMethod(200)MsgBox tmpSub和Functionfunction。Dim str,str1,str2str1 = 努力工作Function Flighting(str)str2 = 我要 & strFlighting = str2End FunctionMsgBox Flighting(str1)VBScript常用函數(shù) n1. 字符串函數(shù)nLen:返回字符串內(nèi)字符的數(shù)目,或是存儲一變量所需的字節(jié)數(shù)。 nLeft:返回指定數(shù)目的從字符串的左邊算起的字符。 nMid:從字符串中返回指定數(shù)目的

26、字符。 nRight:從字符串右邊返回指定數(shù)目的字符。 VBScript常用函數(shù)nLcase:返回字符串的小寫形式。nUcase:返回字符串的大寫形式。 nStrComp:返回一個表明字符串比較結果的值。 Dim MyStr1, MyStr2, MyCompMyStr1 = ABCD: MyStr2 = abcd 定義變量。MyComp = StrComp(MyStr2,MyStr1) 返回1。MsgBox MyCompVBScript常用函數(shù)nSplit:返回基于0 的一維數(shù)組,其中包含指定數(shù)目的子字符串。 VBScript常用函數(shù)Dim MyString, MyArray, MsgMySt

27、ring = VBScriptXisXfun!MyArray = Split(MyString, x, -1, 1)Msg = MyArray(0) & & MyArray(1)Msg = Msg & & MyArray(2)MsgBox Msg 顯示VBScript is fun!VBScript常用函數(shù)nJoin:返回一個字符串,此字符串由包含在數(shù)組中的許多子字符串聯(lián)接創(chuàng)建。 VBScript常用函數(shù)Dim MyStringDim MyArray(3)MyArray(0) = Mr.MyArray(1) = John MyArray(2) = Doe MyArray(3) = IIIMyS

28、tring = Join(MyArray)MsgBox MyStringVBScript常用函數(shù)n2.轉(zhuǎn)換函數(shù)nCStr:返回表達式,該表達式已被轉(zhuǎn)換為String子類型的VariantDim MyDouble,MyStringMyDouble = 437.234MyString=CStr(MyDouble)MsgBox MyStringVBScript常用函數(shù)n3.判斷函數(shù)nIsArray:返回Boole an 值指明某變量是否為數(shù)組。 Dim MyVariableDim MyArray(3)MyArray(0)=SundayMyArray(1)=MondayMyArray(2)=TuesdayMyVariable=IsArray(MyArray) MyVariable為TrueMsgB

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論