使用VBS打開程序和關閉程序


下面這個是先執行程序后,然后再結束程序
Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
'下行是設置延時啟動時間 5000等於5秒
WScript.Sleep(5000)
'下行引號內填寫服務器上批處理文件的共享路徑
Wsh.Run "\\服務器\fuwu.exe",false,false
'下行是設置延時清除時間 5000等於5秒
WScript.Sleep(5000)
'下行清除進程
Wsh.Run "taskkill /f /im fuwu.exe",0
Set Wsh=NoThing
WScript.quit

 

如果只想打開程序可以使用下面的代碼:

Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
'下行是設置延時啟動時間 5000等於5秒
WScript.Sleep(5000)
'下行引號內填寫服務器上批處理文件的共享路徑
Wsh.Run "\\服務器\fuwu.exe",false,false
Set Wsh=NoThing
WScript.quit

 

如果只想關閉程序可以用下面的代碼:

Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
'下行是設置延時清除時間 5000等於5秒
WScript.Sleep(5000)
'下行清除進程
Wsh.Run "taskkill /f /im fuwu.exe",0
Set Wsh=NoThing
WScript.quit

 

將上面的代碼保存為 xx.vbs ,雙擊就可以運行。

 

 

——————————————————————分割線————————————————————————————

 

用vbs打開文件

set ws=createobject("wscript.shell")
ws.run"打開文件所使用的程序+空格+程序路徑",x,ture

Run方法有三個參數:
第一個參數:是你要執行的程序的路徑,
第二個參數:是窗口的形式,0后台運行;1正常運行;2最小化;3最大化;缺省的話表示正常運行
第三個參數:是表示這個腳本是等待還是繼續執行,如果設為了True,腳本就會等待調用的程序退出后再向后執行。

第二個參數可取值為下面為可選值:
0 隱藏一個窗口並激活另一個窗口。
1 激活並顯示窗口。如果窗口處於最小化或最大化狀態,則系統將其還原到原始大小和位置。第一次顯示該窗口時,應用程序應指定此標志。
2 激活窗口並將其顯示為最小化窗口。
3 激活窗口並將其顯示為最大化窗口。
4 按最近的窗口大小和位置顯示窗口。活動窗口保持活動狀態。
5 激活窗口並按當前的大小和位置顯示它。
6 最小化指定的窗口,並按照 Z 順序激活下一個頂部窗口。
7 將窗口顯示為最小化窗口。活動窗口保持活動狀態。
8 將窗口顯示為當前狀態。活動窗口保持活動狀態。
9 激活並顯示窗口。如果窗口處於最小化或最大化狀態,則系統將其還原到原始大小和位置。還原最小化窗口時,應用程序應指定此標志。
10 根據啟動應用程序的程序狀態來設置顯示狀態。

 

dim wsh
set wsh=wscript.createobject("wscript.shell") 
wsh.run "notepad.exe c:\test.vbs",1,ture '指定文件打開程序
wsh.run "c:\test.doc",1,ture '使用系統默認程序打開文件
set wsh=nothing

如果你希望使用記事本打開程序,而不是直接運行,那么就指定文件的打開程序。


例1:打開記事本和IE瀏覽器

Set ws = CreateObject("WScript.Shell")

ws.Run "notepad",,True

ws.Run "iexplore"

例2:隱藏BAT執行窗口

Set ws = CreateObject("WScript.Shell")

ws.Run "x.bat",0

例3:運行cmd命令,執行netstat並保存執行結果到x.txt

Set ws = CreateObject("WScript.Shell")

ws.Run "cmd /c netstat -an>>x.txt",0

例4:結束IE的進程

Set ws = CreateObject("WScript.Shell")

ws.Run "taskkill /f /im iexplore.exe",0

============================================================

補充:

這里有個類似的方法就是Exec 方法,具體看下面的例子


例1:運行文件

Set ws = CreateObject("WScript.Shell")

ws.Exec "notepad c:\x.txt" '對於Exec應指明程序,此notepad是必須的

例2:運行程序>獲取進程PID值>強行結束進程(沒有Run+taskkill強:如在記事本未保存的情況下結束進程,Exec會出錯,而Run不會)>判斷進程是否在運行(這個功能不錯)

Set ws = CreateObject("WScript.Shell")

Set e = ws.Exec("notepad")

MsgBox e.ProcessId

e.Terminate

WSH.Sleep 1000

MsgBox e.Status '0為運行,1為結束

例3:直接獲取dos命令輸出,dos窗口會閃一下,Exec沒有窗口控制功能

Set ws = CreateObject("WScript.Shell")

Set e = ws.Exec("ipconfig")

MsgBox e.Stdout.ReadAll

例4:

Set ws = CreateObject("WScript.Shell")

Set e = ws.Exec("cmd /c echo Hi")

MsgBox e.Stdout.ReadAll

出處:http://wenwen.soso.com/z/q390167953.htm
出處:http://foxroom.diandian.com/post/2011-05-21/947745


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM