用VBS調(diào)用程序并對(duì)程序的運(yùn)行情況進(jìn)行監(jiān)控的兩個(gè)代碼
有同時(shí)要用一個(gè)CAE軟件調(diào)用外部程序,但是,通過(guò)這個(gè)CAE軟件調(diào)用外部程序以后,因?yàn)檫@個(gè)外部程序有參數(shù),調(diào)用方法寫(xiě)在Bat文件里的,由CAE軟件來(lái)調(diào)用這個(gè)Bat,所以,CAE軟件沒(méi)辦法對(duì)調(diào)用的程序進(jìn)行監(jiān)控,調(diào)用的程序還在運(yùn)行當(dāng)中,準(zhǔn)備工作還沒(méi)完成,就到了下一流程,所以,造成流程出錯(cuò),我寫(xiě)了兩個(gè)VBS代碼,通過(guò)它來(lái)調(diào)用就解決了這個(gè)問(wèn)題!兩個(gè)小程序分別是按不同的方式來(lái)監(jiān)控的!
兩個(gè)程序的調(diào)用方式不一樣,一個(gè)是對(duì)系統(tǒng)進(jìn)程進(jìn)行監(jiān)控,一個(gè)是對(duì)程序生成的文件特征進(jìn)行監(jiān)控!
第一個(gè):
‘該程序用來(lái)配合SimCode調(diào)用其他程序,并對(duì)程序的運(yùn)行情況做監(jiān)控,!
‘監(jiān)控方法是:查找程序的Log文件,如果有結(jié)束標(biāo)志,說(shuō)明程序已經(jīng)執(zhí)行完畢!
Set WshShell=Wscript.CreateObject(”Wscript.Shell”)
WshShell.Run(”notepad.exe c:\kw.txt”)'調(diào)用的程序
wscript.sleep 2000′等待2秒鐘
Dim fso,ts,i
Do While Not i=1′當(dāng)i=1不成立時(shí),一直循環(huán)!
set fso=Wscript.CreateObject(”Scripting.FileSystemObject”)
Set ts=fso.opentextfile(”c:\kw.txt”)'打開(kāi)調(diào)用的程序日生的日志文件
Do While Not ts.AtEndOfStream'當(dāng)沒(méi)有到文件尾時(shí)循環(huán)
data=ucase(trim(ts.readline))'讀取日志文件中的一行
If instr(data,”O(jiān)K”) Then'查找上面讀取到的內(nèi)容是否存在程序運(yùn)行完的標(biāo)志!此例中標(biāo)志為”O(jiān)K”
i=1′當(dāng)?shù)玫匠绦蜻\(yùn)行完成的標(biāo)志時(shí),傳遞一個(gè)值給Do循環(huán),使其結(jié)束循環(huán),不再對(duì)Log文件監(jiān)控
Exit Do
End If
loop
Set ts = nothing
Set fso = nothing'關(guān)閉創(chuàng)建的對(duì)象
wscript.sleep 2000′等待2秒后,進(jìn)行下一輪對(duì)Log文件的監(jiān)控
loop
wscript.echo “OK!”‘給用戶一個(gè)反饋,調(diào)用的程序執(zhí)行完畢!真實(shí)使用時(shí),應(yīng)該不要這一行!
第二個(gè):
‘該程序用來(lái)配合SimCode調(diào)用其他程序,并對(duì)程序的運(yùn)行情況做監(jiān)控,!
‘監(jiān)控方法是:對(duì)系統(tǒng)進(jìn)程的監(jiān)控
Set WshShell = Wscript.CreateObject(”Wscript.Shell”)
allApp=”c:\windows\system32\notepad.exe” ‘寫(xiě)下要調(diào)用的程序的完整路徑。
AppName=”notepad.exe” ‘寫(xiě)下調(diào)用的程序的名稱.
WshShell.Run (allApp) ‘啟動(dòng)調(diào)用的程序
dim AppPath
for each ps in getobject(”winmgmts:\\.\root\cimv2:win32_process”).instances_ ‘列出系統(tǒng)中所有正在運(yùn)行的程序
if lcase(ps.name)=AppName then'檢測(cè)程序在進(jìn)程中是否存在
AppPath=ps.commandline'提取程序的命令行
end if
next
do'循環(huán)檢測(cè)
myqqin=chkuin(App)'檢測(cè)上面得到命令行是否在進(jìn)程中存在!
if not myqqin then'如果沒(méi)有運(yùn)行則,告訴用戶,并且結(jié)束監(jiān)控!
msgbox “調(diào)用的程序已經(jīng)退出了!”‘實(shí)際使用中,請(qǐng)取掉這一行!
Exit do
else
wscript.sleep 3000′等待5秒
end if
loop'返回繼續(xù)檢測(cè)
function chkuin(App)
for each ps in getobject(”winmgmts:\\.\root\cimv2:win32_process”).instances_
if lcase(ps.name)=AppName then
AppPatht1=ps.commandline
if AppPatht1=AppPath then chkuin=true end if
end if
next
end function
上一篇:本地連接禁用/啟用批處理腳本
欄 目:vb
下一篇:基于邏輯運(yùn)算的簡(jiǎn)單權(quán)限系統(tǒng)(原理,設(shè)計(jì),實(shí)現(xiàn)) VBS 版
本文標(biāo)題:用VBS調(diào)用程序并對(duì)程序的運(yùn)行情況進(jìn)行監(jiān)控的兩個(gè)代碼
本文地址:http://mengdiqiu.com.cn/a1/vb/7935.html
您可能感興趣的文章
- 01-10下載文件到本地運(yùn)行的vbs
- 01-10VBS中的正則表達(dá)式的用法大全 <font color=red>原創(chuàng)&
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10VBScript教程 第十一課深入VBScript
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript語(yǔ)法速查及實(shí)例說(shuō)明
- 01-10VBS中Select CASE的其它用法
- 01-10VBScript教程 第七課使用條件語(yǔ)句
- 01-10vbscript 可以按引用傳遞參數(shù)嗎?
- 01-10VBScript教程 第二課在HTML頁(yè)面中添加VBscript代碼


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 01-10下載文件到本地運(yùn)行的vbs
- 01-10飄葉千夫指源代碼,又稱qq刷屏器
- 01-10SendKeys參考文檔
- 01-10什么是一個(gè)高效的軟件
- 01-10VBS中的正則表達(dá)式的用法大全 &l
- 01-10exe2swf 工具(Adodb.Stream版)
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript教程 第十一課深入VBScript
- 01-10VBScript語(yǔ)法速查及實(shí)例說(shuō)明
隨機(jī)閱讀
- 04-02jquery與jsp,用jquery
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-10C#中split用法實(shí)例總結(jié)
- 01-10delphi制作wav文件的方法
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-11Mac OSX 打開(kāi)原生自帶讀寫(xiě)NTFS功能(圖文
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?