Ⅰ 如何通過bat或是vbs腳本實現自動安裝軟體
vbs 來實現自動安裝軟體 一般是採用模擬按鍵 用senkeys 發送按鍵信息 一直採用安裝包默認設置進行安裝 一路點擊 下一步 當然有的可以直接回車
WshShell.SendKeys"{ENTER}"'模擬按下回車鍵執行下一步
Ⅱ 怎麼做個批處理安裝軟體,不用點下一步,直接能安裝完成。。急高手指教
利用批處理全自動安裝常用軟體
利用批處理安裝常用軟體,我們需要對以下幾個知識點進行掌握:
一.常用應用軟體的封裝類型:
1.installshield型:
installshield是一款商業級別的安裝程序封裝工具,許多大型商業軟體都用它進行封裝.例如:macromedia flash. pgtoshop等
安裝參數:-R 用於記錄安裝過程
-s 用於進行軟體的自動安裝
-f1 指定setup.iss應答文件的路徑
使用方法:1.先用在命令行下用-R參數進行軟體的安裝,其安裝過程與正常安裝沒有本質的區別,但在軟體安裝結束後可以在c:\windows(winxp系統)或c:\winnt(win2k系統)目錄下找到一個名為setup.iss的文件,它就是我們後面要用到的可以進行自動安裝的重要應答文件.
2.將以上的setup.iss文件與你的安裝程序放在同一目錄下,利用-s參數進行全自動安裝.
例如: start /wait x:\phtoshop\setup.exe -s -f1 "y:\setup.iss"(如果setup.iss文件與安裝程序在同一目錄,可以省去-f1參數)
2.Inno setup 類型:
Inno setup 是一款完全免費的安裝程序封裝工具,其功能和穩定性均可與商業封裝工具媲美.例如 :迅雷
安裝參數: /silent(/verysilent) 用於軟體的自動安裝
sp- 用於跳過安裝程序的確認界面
使用方法: start /wait x:\thunder5.exe /verysilent sp-
說明:此安裝參數的使用比較容易,但如果我們把它寫入到批處理文件中進行大量的軟體安裝時,有的軟體會在安裝完成後自行啟動,比如迅雷,為不影響系統性能,我們可以結合其他的命令終止其進程,例如:
@echo off
start /wait x:\thunder5.exe /verysilent sp-
echo.
taskkill.exe /F /IM Thunder5.exe
3.Microsoft Windows Installer技術打包程序
微軟自家產品,許多軟體生產廠家現在都選擇這種基於微軟開發的封裝方式
參數:/ /QB(/QN)用於自動安裝軟體
/REBOOT=suppress 安裝後不重起
使用方法: start /wait x:\setup.exe /QB REBOOT=Suppress
4.Nullsoft SuperRMP Install System (NSIS)類型,例如:winamp
使用參數: /S 用於自動安裝軟體
例如: x:\winamp\setup.exe /S
說明:此類軟體安裝後會給出一個文件關聯確認窗口,目前無法跳過,但我可以給大家一個思路,就是結合VBS腳本中的Doskey命令來模仿鍵盤動作實現確認過程,到現在為止我個人還沒有寫出來,望高手幫忙完善
二.測試方法與安裝類型分析:
1.測試方法:可以用目前比較流行的虛擬機進行測試
2.安裝類型分析:大部分安裝程序可以通過滑鼠右擊安裝程序___選擇屬性 ________版本來查看其封裝類
三.在批處理文件中的要求
如果你打算自己結合WINXP光碟工具重新封裝安裝光碟,並且在利用winxp應答文件安裝應用軟體,你必須明白批處理文件的位置應防在那裡,這些你可以去閱讀有關 此方面的文章
Ⅲ 怎麼設置自動安裝軟體vbs文件
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.vbs
set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^{ESC}uu"
例子2:重啟腳本 (模擬按鍵為:Ctrl + Esc、u、r )
把以下代碼復制至記事本,另存為 reboot.vbs
set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^{ESC}ur"
例子3:切換輸入法 (模擬同時按下:Shift Ctrl )
set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "+(^)"
例子4:輸入 cn-dos.net! 至記事本並保存為 CnDos.txt
Dim 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鍵同意協議
Ⅳ 有兩個軟體都是VBS方式安裝的,但不知電腦里缺少什麼,點擊VBS安裝都是根本沒有反映,進程里也沒有運行。
一、軟體問題 1、桌面圖標太多會惹禍 桌面上有太多圖標也會降低系統啟動速度。Windows每次啟動並顯示桌面時,都需要逐個查找桌面快捷方式的圖標並載入它們,圖標越多,所花費的時間當然就越多。同時有些殺毒軟體提供了系統啟動掃描功能,這將會耗費非常多的時間,其實如果你已經打開了殺毒軟體的實時監視功能,那麼啟動時掃描系統就顯得有些多餘,還是將這項功能禁止吧! 建議大家將不常用的桌面圖標放到一個專門的文件夾中或者乾脆刪除! 2、ADSL導致的系統啟動變慢 默認情況下Windows XP在啟動時會對網卡等網路設備進行自檢,如果發現網卡的IP地址等未配置好就會對其進行設置,這可能是導致系統啟動變慢的真正原因。這時我們可以打開 “本地連接”屬性菜單,雙擊“常規”項中的“Internet協議”打開“TCP/IP屬性”菜單。將網卡的IP地址配置為一個在公網(默認的網關是 192.168.1.1)中尚未使用的數值如192.168.1.X,X取介於2~255之間的值,子網掩碼設置為255.255.255.0,默認網關和DNS可取默認設置。 二、硬體問題 1、CPU 和風扇是否正常運轉並足夠製冷 當CPU風扇轉速變慢時,CPU本身的溫度就會升高,為了保護CPU的安全,CPU就會自動降低運行頻率,從而導致計算機運行速度變慢。有兩個方法檢測CPU的溫度。你可以用“手指測法”用手指試一下處理器的溫度是否燙手,但是要注意的是採用這種方法必須先拔掉電源插頭,然後接一根接地線來防止身上帶的靜電擊穿CPU以至損壞。另一個比較科學的方法是用帶感溫器的萬用表來檢測處理器的溫度。 2、是否使用了磁碟壓縮 因為“磁碟壓縮”可能會使電腦性能急劇下降,造成系統速度的變慢。所以這時你應該檢測一下是否使用了“磁碟壓縮”,具體操作是在“我的電腦” 上點擊滑鼠右鍵,從彈出的菜單選擇“屬性”選項,來檢查驅動器的屬性。 3、網卡造成的影響 只要設置不當,網卡也會明顯影響系統啟動速度,你的電腦如果連接在區域網內,安裝好網卡驅動程序後,默認情況下系統會自動通過DHCP來獲得 IP地址,但大多數公司的區域網並沒有DHCP伺服器,因此如果用戶設置成“自動獲得IP地址”,系統在啟動時就會不斷在網路中搜索DHCP 伺服器,直到獲得IP 地址或超時,自然就影響了啟動時間,因此區域網用戶最好為自己的電腦指定固定IP地址。 4、缺少足夠的內存 Windows操作系統所帶來的優點之一就是多線性、多任務,系統可以利用CPU來進行分時操作,以便你同時做許多事情。但事情有利自然有弊,多任務操作也會對你的機器提出更高的要求。朋友們都知道即使是一個最常用的WORD軟體也要求最好有16MB左右的內存,而運行如3D MAX等大型軟體時,64MB的內存也不夠用。所以此時系統就會自動採用硬碟空間來虛擬主內存,用於運行程序和儲存交換文件以及各種臨時文件。由於硬碟是機械結構,而內存是電子結構,它們兩者之間的速度相差好幾個數量級,因而使用硬碟來虛擬主內存將導致程序運行的速度大幅度降低。 5、硬碟空間不足 使用Windows系統平台的缺點之一就是對文件的管理不清楚,你有時根本就不知道這個文件對系統是否有用,因而Windows目錄下的文件數目越來越多,容量也越來越龐大,加之現在的軟體都喜歡越做越大,再加上一些系統產生的臨時文件、交換文件,所有這些都會使得硬碟可用空間變小。當硬碟的可用空間小到一定程度時,就會造成系統的交換文件、臨時文件缺乏可用空間,降低了系統的運行效率。更為重要的是由於我們平時頻繁在硬碟上儲存、刪除各種軟體,使得硬碟的可用空間變得支離破碎,因此系統在存儲文件時常常沒有按連續的順序存放,這將導致系統存儲和讀取文件時頻繁移動磁頭,極大地降低了系統的運行速度。 6、硬碟分區太多也有錯 如果你的Windows 2000沒有升級到SP3或SP4,並且定義了太多的分區,那麼也會使啟動變得很漫長,甚至掛起。所以建議升級最新的SP4,同時最好不要為硬碟分太多的區。因為Windows 在啟動時必須裝載每個分區,隨著分區數量的增多,完成此操作的時間總量也會不斷增長。 三、電腦意外中毒的問題 Windows系統是越用越慢,這是不爭的事實。因此,使用Windows就免不了要重新安裝系統。當然,重新安裝系統並不難,但是安裝完系統後你知道我們有多少事情必須要做嗎?這可容不得絲毫的鬆懈,一旦馬虎,將可能會導致前功盡棄,甚至有可能會造成數據丟失、信息泄密! 第1件大事:不要急著接入網路 在安裝完成Windows後,不要立即把伺服器接入網路,因為這時的伺服器還沒有打上各種補丁,存在各種漏洞,非常容易感染病毒和被入侵。 此時要加上沖擊波和震撼波補丁後並重新啟動再聯入互聯網。 第2件大事:給系統打補丁/安裝殺毒軟體 不用多說,沖擊波和震盪波病毒的補丁是一定要打上的,如果你安裝了Windows XP SP2則不用再另行安裝。
Ⅳ 求一全自動安裝軟體的批處理或vbs腳本
SetobjShell=CreateObject("Wscript.Shell")
strCommandLine="kugou2012.exe"'啟動安裝程序
objShell.Run(strCommandLine)
setWshShell=CreateObject("WScript.Shell")
WshShell.AppActivate"酷狗音樂2012安裝程序"
WScript.Sleep5000'延時5秒
WshShell.SendKeys"{ENTER}"'模擬按下回車鍵執行下一步
WScript.Sleep1000'延時1秒
WshShell.SendKeys"{ENTER}"'模擬按下回車鍵執行下一步
WScript.Sleep20000'延時20秒等待安裝完成
WshShell.SendKeys"{ENTER}"'模擬按下回車鍵執行下一步
vbs腳本,批處理也是調用vbs來實現.
不一定通用,因為不同版本的軟體安裝界面不同.照著修改吧.
其實用autoit來做會比較簡單,而且autoit功能更多.