如下:
Set objShell = CreateObject("Wscript.Shell")
strCommandLine = "ttpsetup.exe" '啟動安裝程序
objShell.Run(strCommandLine)
set WshShell = CreateObject("WScript.Shell")
WScript.Sleep 3000 '延時3秒
WshShell.SendKeys "s" '模擬按下 S 鍵開始安裝
WScript.Sleep 300 '延時0.3秒
WshShell.SendKeys "a" '模擬按下 A 鍵同意協議
WScript.Sleep 300
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 300
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 300
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 2000
WshShell.SendKeys "{TAB}" '模擬按下 Tab 鍵選擇安裝項目
WScript.Sleep 300
WshShell.SendKeys "{TAB}"
WScript.Sleep 300
WshShell.SendKeys " " '模擬按下空格鍵去除安裝百度超級搜霸一行前的√號
WScript.Sleep 300
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵完成最后一步把以上代碼復制到記事本中(右邊的文字是說明,一起復制也不影響),再另存為 AutoSetup.vbs ,把此文件存放在千千靜聽安裝執行程序(ttpsetup.exe)同一目錄下,雙擊 AutoSetup.vbs 即可自動完成千千靜聽的安裝。成功的關鍵是,你必須先安裝一次千千靜聽,然后記住每一步的按鍵是什么,這個文件就可以拿去別的機上執行了。SendKeys 的參數說明:使用 SendKeys 方法可以將鍵擊發送到無自動化界面的應用程序中。多數鍵盤字符都可用一個鍵擊表示。某些鍵盤字符由多個鍵擊組合而成(例如,CTRL+SHIFT+HOME)。要發送單個鍵盤字符,請將字符本身作為 string 參數發送。例如,要發送字母 x,則請發送 string 參數 "x"。可使用 SendKeys 同時發送多個鍵擊。為此,可將每個鍵擊按順序排列在一起,以此來創建表示一系列鍵擊的復合字符串參數。例如,要發送鍵擊 a、b 和 c,則需要發送字符串參數 "abc" 。SendKeys 方法將某些字符用作字符的修飾符(而不使用其本身的含義)。這組特殊的字符可包括圓括號、中括號、大括號,以及:
加號 "+"
插入記號 "^"
百分號 "%"
和“非”符號 "~"用大括號 "{}" 括起這些字符可以發送它們。例如,要發送加號,請使用字符串參數 "{+}"。SendKeys中使用的中括號 "[ ]" 無任何特殊含義,但是必須把它們括在大括號中,以便容納確實要賦予其特殊含義的應用程序(例如,對於動態數據交換 (DDE) 就是這樣)。
要發送左中括號字符,請發送字符串參數 "{[}";要發送右中括號字符,請發送字符串參數 "{]}"。
要發送左大括號字符,請發送字符串參數 "{{}";要發送右大括號字符,請發送字符串參數 "{}}"。
某些鍵擊不生成字符(如 ENTER 和 TAB)。某些鍵擊表示操作(如 BACKSPACE 和 BREAK)。要發送這些類型的鍵擊,請發送下表中列出的參數:空格鍵 " "
退格鍵 {BACKSPACE} 或 {BS} 或 {BKSP}
BREAK {BREAK}
DELETE {DELETE} 或 {DEL}
向下鍵 {DOWN}
向上鍵 {UP}
向左鍵 {LEFT}
向右鍵 {RIGHT}
END {END}
ENTER {ENTER} 或 ~
ESC {ESC}
TAB {TAB}
CAPS LOCK {CAPSLOCK}
HELP {HELP}
HOME {HOME}
INSERT {INSERT} 或 {INS}
NUM LOCK {NUMLOCK}
PAGE DOWN {PGDN}
PAGE UP {PGUP}
PRINT SCREEN {PRTSC}
SCROLL LOCK {SCROLLLOCK}
F1 {F1}
F2 {F2}
F3 {F3}
F4 {F4}
F5 {F5}
F6 {F6}
F7 {F7}
F8 {F8}
F9 {F9}
F10 {F10}
F11 {F11}
F12 {F12}
要發送由常規鍵擊和 SHIFT、CTRL 或 ALT 組合而成的鍵盤字符,請創建表示該鍵擊組合的復合字符串參數。可通過在常規鍵擊之前添加一個或多個以下特殊字符來完成上述操作:SHIFT +
CTRL ^
ALT %
注意:這樣使用時,不用大括號括起這些特殊字符。
要指定在按下多個其他鍵時,按下 SHIFT、CTRL 和 ALT 的組合,請創建復合字符串參數,用括號括起其中的組合鍵。例如,要發送的組合鍵指定:
如果在按 e 和 c 的同時按 SHIFT 鍵,則發送字符串參數 "+(ec)"。
如果在按 e 時只按 c(而不按 SHIFT),則發送字符串參數 "+ec"。
可使用 SendKeys 方法發送一種在一行內重復按鍵的鍵擊。為此,要創建復合字符串參數,以指定要重復的鍵擊,並在其后指定重復次數。可使用 {鍵擊 數字} 形式的復合字符串參數來完成上述操作。例如,如果要發送 10 次 "x",則需要發送字符串參數 "{x 10}"。請確保在鍵擊和數字之間有一個空格。
注意:只可以發送重復按一個鍵的鍵擊。例如,可以發送 10 次 "x",但不可發送 10 次 "Ctrl+x"。
注意:不能向應用程序發送 PRINT SCREEN 鍵 {PRTSC}。
例子1:關機腳本 (模擬按鍵為:Ctrl + Esc、u、u )把以下代碼復制至記事本,另存為 off.vbsset WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^{ESC}uu"
例子2:重啟腳本 (模擬按鍵為:Ctrl + Esc、u、r )把以下代碼復制至記事本,另存為 reboot.vbsset WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^{ESC}ur"
例子3:切換輸入法 (模擬同時按下:Shift Ctrl )set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "+(^)"
例子4:輸入 cn-dos.net! 至記事本並保存為 CnDos.txtDim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")
WshShell.Run "notepad"
WScript.Sleep 1500
WshShell.AppActivate "無標題 - 記事本"
WshShell.SendKeys "c"
WScript.Sleep 200
WshShell.SendKeys "n"
WScript.Sleep 200
WshShell.SendKeys "-"
WScript.Sleep 200
WshShell.SendKeys "d"
WScript.Sleep 200
WshShell.SendKeys "o"
WScript.Sleep 200
WshShell.SendKeys "s"
WScript.Sleep 200
WshShell.SendKeys "."
WScript.Sleep 200
WshShell.SendKeys "n"
WScript.Sleep 200
WshShell.SendKeys "e"
WScript.Sleep 200
WshShell.SendKeys "t"
WScript.Sleep 200
WshShell.SendKeys "!"
WScript.Sleep 200
WshShell.SendKeys "%FS"
WScript.Sleep 500
WshShell.SendKeys "C"
WScript.Sleep 200
WshShell.SendKeys "n"
WScript.Sleep 200
WshShell.SendKeys "D"
WScript.Sleep 200
WshShell.SendKeys "o"
WScript.Sleep 200
WshShell.SendKeys "s"
WScript.Sleep 200
WshShell.SendKeys "%S"
WScript.Sleep 500
WshShell.SendKeys "%FX"
例子5:自動定時存盤的記事本(此腳本來自網上)'第一部分:定義變量和對象
Dim WshShell, AutoSaveTime, TXTFileName
AutoSaveTime=(1000*60*1) '自動存盤時間為1分鍾
Set WshShell=WScript.CreateObject("WScript.Shell")
TXTFileName=InputBox("給文本起名(不能用中文和純數字):")'第二部分:打開並激活記事本
WshShell.Run "notepad"
WScript.Sleep 200
WshShell.AppActivate "無標題 - 記事本"'第三部分:用輸入的文件名存盤
WshShell.SendKeys "^s"
WScript.Sleep 300
WshShell.SendKeys TXTFileName
WScript.Sleep 300
WshShell.SendKeys "%s"
WScript.Sleep AutoSaveTime'第四部分:自動定時存盤
While WshShell.AppActivate (TXTFileName)=True
WshShell.SendKeys "^s"
WScript.Sleep AutoSaveTime
Wend
WScript.Quit
例子:set objShell = CreateObject("Wscript.Shell")
strCommandLine = "psetup755281.exe" '啟動安裝程序
objShell.Run(strCommandLine)
set WshShell = CreateObject("WScript.Shell")
WScript.Sleep 2000 '延時3秒
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 300 '延時3秒
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 300 '延時3秒
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 5200 '延時3秒
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 300 '延時3秒
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 300 '延時3秒
WshShell.SendKeys "{ENTER}" '模擬按下回車鍵執行下一步
WScript.Sleep 200
WshShell.SendKeys " " '模擬按下空格鍵去除安裝百度超級搜霸一行前的√號
WScript.Sleep 100
WshShell.SendKeys "{TAB}" '模擬按下 Tab 鍵選擇安裝項目
WScript.Sleep 200
WshShell.SendKeys " " '模擬按下空格鍵去除安裝百度超級搜霸一行前的√號
WScript.Sleep 200 '延時0.3秒
WshShell.SendKeys "f" '模擬按下 F鍵同意協議