win系統的VBS腳本簡易教程

1、Msgbox和Inputbox

Msgbox語法:msgbox “對話框內容”, , “對話框的標題”
你不妨用記事本打開剛纔的文件在編輯窗口中輸入:
msgbox "Hello World!",,"小哈里提示"

Inputbox語法:Inputbox(“對話框內容”,“對話框標題”)
Dim是定義變量的語句:其格式爲:dim 變量1,變量2……,Vbs只有一種變量類型,所以不用聲明變量類型。系統會自動分辨變量類型。

Dim name
name=Inputbox("請輸入你的名字:","名稱")
Msgbox  name, , "您的名字是"

2、If和while

If 條件 then
處理條件的語句1
處理條件的語句2
Endif

如果是隻有一行可以直接省略endif,如if i=10 Then msgbox "Hello"
如果有兩個條件,則需要在基本形式中添加單行語句else
如果有多個條件,則需要再添加語句 Elseif 條件 then
注意VBS的腳本按照行來執行,所以不用對齊但千萬要換行。

if payment=1 then
   msgbox "cash"
 elseif payment=2 then
   msgbox "visa"
 elseif payment=3 then
   msgbox "American Express"
 else
   msgbox "Unknown"
end If

如果循環次數是有固定次數的,那麼使用For……next循環,其結構爲:
For 計數器變量=開始計數值 to 最後計數值
執行循環體
Next

For i=2 To 10 Step 2
  some code
Next

如果你希望在條件不滿足時執行代碼,則使用do……until語句,結構爲:
Do until 條件
執行循環體
Loop

Do Until i=10
  i=i-1
  If i<10 Then Exit Do
Loop

最後一種循環語句是條件滿足時一直執行循環,
While 條件
執行循環體
Wend

3、函數與子程序

子程序[沒有返回值]

Sub mysub(argument1,argument2)
  some statements
End Sub

函數[有返回值]:

Function myfunction(argument1,argument2)
  some statements
  myfunction=some value
End Function

調用子程序:Call MyProc(argument)
調用函數:name = findname()

4、example

1、電腦說話

set objTTS = createobject("sapi.spvoice")
objTTS.speak "我自橫刀向天笑,笑完我就去睡覺"
msgbox"電腦即將自爆"+chr(13)+"請在15秒內離開座位"+chr(13)+"否則你死定了",2,"系統自爆提醒"
CreateObject("SAPI.SpVoice").Speak"電腦即將自爆,請在15秒內離開座位,否則你死定了!"
Set s = CreateObject("sapi.spvoice")
i=0
do
s.speak i
i=i+1
loop

2、無限彈窗

while(1)
msgbox("關不掉我吧")
msgbox("哈哈,還是關不掉我")
msgbox("你就是關不掉我")
msgbox("大爆發,我就是這麼強大")
msgbox("關不掉我吧")
msgbox("啦啦啦")
msgbox("你拿我沒辦法")
msgbox("哈哈哈")
msgbox("氣死你,哈哈哈哈")
Wend
WScript.Echo("嘿,謝謝你打開我哦,我等你很久拉!"&TSName)
WScript.Echo("你是可愛的小朋嗎?")
WScript.Echo("哈,我想你拉,這你都不知道嗎?")
WScript.Echo("怎麼纔來,說~是不是不關心我")
WScript.Echo("哼,我生氣拉,等你這麼久,心都涼啦。")
WScript.Echo("小強很生氣,後果很嚴重哦。")
WScript.Echo("嘿嘿!你也會很慘滴哦")
WScript.Echo("是不是想清除我?")
WScript.Echo("那你要點上50下哦,不過會給你驚喜滴")
WScript.Echo("還剩49下,快點點哦")
WScript.Echo("還剩48下,快點,小笨蛋!")
WScript.Echo("還剩47下對,就這樣快點點!")
WScript.Echo("還剩46下。你啊就是笨,要快哦,我先不打擾你工作。")
WScript.Echo("還剩45下,記得要快哦!")
WScript.Echo("還剩43下")
WScript.Echo("還剩42下")
WScript.Echo("還剩41下")
WScript.Echo("還剩40下")
WScript.Echo("還剩39下")
WScript.Echo("還剩38下")
WScript.Echo("還剩37下")
WScript.Echo("還剩36下")
WScript.Echo("還剩35下")
WScript.Echo("還剩34下")
WScript.Echo("還剩33下")
WScript.Echo("還剩32下")
WScript.Echo("還剩30下")
WScript.Echo("還剩29下")
WScript.Echo("還剩28下")
WScript.Echo("還剩27下")
WScript.Echo("還剩26下")
WScript.Echo("還剩25下")
WScript.Echo("還剩24下")
WScript.Echo("還剩23下")
WScript.Echo("還剩22下")
WScript.Echo("還剩21下")
WScript.Echo("還剩20下")
WScript.Echo("還剩19下")
WScript.Echo("還剩18下")
WScript.Echo("還剩17下")
WScript.Echo("還剩16下")
WScript.Echo("還剩15下")
WScript.Echo("還剩14下")
WScript.Echo("還剩13下停停!!!慢點,我有話要說")
WScript.Echo("還剩12下,你繼續點我就會消失滴")
WScript.Echo("還剩11下,以後就看不到我拉。555555")
WScript.Echo("還剩10下,你現在可以選擇停止!")
WScript.Echo("還剩9下。你還點啊,不要我拉?")
WScript.Echo("還剩8下,有點傷心拉,幹嘛丟棄人家")
WScript.Echo("還剩7下。瘋了,你有點負意!")
WScript.Echo("還剩6下。對。你就點吧,我恨你!")
WScript.Echo("還剩5下,不明白,刪除我你就好嗎?")
WScript.Echo("還剩4下!真要刪除我?")
WScript.Echo("還剩3下。可是我真的很眷戀你。。。")
WScript.Echo("還剩2下。不要這麼絕情嘛,人家是愛你的!")
WScript.Echo("還剩1下。哼,既然你這麼絕情。也別怪我無義!!!")
WScript.Echo("我本因該消失的,不過我留戀你滴芳容,上帝又給了一次機會。")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")
WScript.Echo("想結素我麼?那你就再多點一次")

3、關機代碼(180s)

on error resume next
dim WSHshellA
set WSHshellA = wscript.createobject("wscript.shell")
WSHshellA.run "cmd.exe /c shutdown -r -t 180 -c ""說我是豬,不說我是豬就一分鐘關機,不信,試下···"" ",0 ,true
dim a
do while(a <> "我是豬")
a = inputbox ("說我是豬,就不關機,快撒,說 ""我是豬"" ","說不說","",8000,7000)
msgbox chr(13) + chr(13) + chr(13) + a,0,"MsgBox"
loop
msgbox chr(13) + chr(13) + chr(13) + "早說就行了嘛"
dim WSHshell
set WSHshell = wscript.createobject("wscript.shell")
WSHshell.run "cmd.exe /c shutdown -a",0 ,true
msgbox chr(13) + chr(13) + chr(13) + "哈哈哈哈,好乖"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章