麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > VBScript > 正文

用vbs實現重新啟動 Internet Explorer

2020-07-26 12:03:02
字體:
來源:轉載
供稿:網友
問:
您好,腳本專家!如果未運行其他實例,如何重新啟動 Internet Explorer?
-- MT
答:
您好,MT。多謝您的問題。您知道,如今每個人都在挑剔可憐的 Internet Explorer 的毛病(盡管大多數 Windows 用戶仍在使用 Internet Explorer)。但現在有人提出了一個問題,他想確保 Internet Explorer 始終正常運行。看見了吧,Internet Explorer:還有人喜歡你!
盡管我們本來要為 Internet Explorer 而感到高興的,但我們不得不承認這個問題使我們有些為難。畢竟,可通過多種不同的方法來解決此問題,這取決于您是需要立即重新啟動 Internet Explorer 還是要等一會再啟動它。對此問題沉思片刻之后,我們決定按我們通常所采取的辦法去做:采用最簡單的解決辦法,在本示例中,每 60 秒檢查一次是否有任何 Internet Explorer 實例正在運行。如果有,則腳本只返回到休眠狀態,再等待 60 秒,然后重新檢查。如果沒有任何運行的 Internet Explorer 實例,則腳本將啟動 Internet Explorer 的新副本,然后休眠片刻,再等待 60 秒,之后重新檢查。
是的,這有點類似于腳本專家一天的工作。嗯,您知道我們是什么意思嗎?不同之處就是每 60 秒即醒來一次以便干點什么。
以下是我們所提供的腳本:
復制代碼 代碼如下:

strComputer = "." 
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2") 
Set objShell = CreateObject("Wscript.Shell") 
Do While True 
    Set colProcesses = objWMIService.ExecQuery _ 
        ("Select * from Win32_Process Where Name = 'iexplore.exe'") 
    If colProcesses.Count = 0 Then 
        objShell.Run "iexplore.exe" 
    End If 
    Wscript.Sleep 60000 
Loop 

沒錯:它實質上只是個普通的 WMI 腳本。因此,它首先連接到本地計算機上的 WMI 服務。但是該腳本與其他 WMI 腳本之間存在一個主要的不同之處。通常此時我們會說:“不過,您也可以針對遠程計算機運行此腳本”。遺憾的是,這一次并非如此。從技術上講,您可以針對遠程計算機運行該腳本,但您啟動的任何 Internet Explorer 實例都將在不可見的窗口中運行(至少在 Windows XP 和 Windows Server 2003 上是這樣),因此,您將無法在屏幕上看到它。這是操作系統中內置的一種安全功能:遠程啟動的進程始終在隱藏窗口中運行。也就是說,該腳本必須在本地計算機上運行。
注意:這個問題有解決辦法嗎?事實上有解決辦法,盡管它要求您本地而不是遠程啟動進程。有關如何解決該問題的示例,請參閱您好,腳本專家!專欄。
連接到 WMI 服務后,我們就創建一個 WScript.Shell 對象的實例,我們將使用它來生成所有新的 Internet Explorer 實例。(是的,我們本來可以使用 WMI 來實現此目的的,但大多數人都發現使用 Wscript.Shell 運行程序要比使用 WMI 更容易。)接著我們建立一個只要 True 等于 True 時即運行的 Do 循環。(除非哲學上有任何新的進展,否則這就意味著腳本將永遠運行下去。要停止該腳本,需要終止腳本進程。如果您正運行在 CScrip 下的命令窗口中,只需按 Ctrl+C 或關閉命令窗口即可實現此操作,非常容易。)
那么此循環執行什么操作?首先,我們使用以下代碼來檢索當前在計算機上運行的所有名為 iexplore.exe 的進程集合:
Set colProcesses = objWMIService.ExecQuery _
    ("Select * from Win32_Process Where Name = 'iexplore.exe'")
盡管會失去懸念,但還是要與當前在計算機上運行的所有 Internet Explorer 實例的集合保持一致。然后,我們檢查 Count 屬性(該屬性可告訴我們集合中的項數)的值是否等于 0:
If colProcesses.Count = 0 Then
如果 Count 等于 0,則表示計算機上未運行任何 Internet Explorer 實例。因此,我們使用 Shell 對象和 Run 方法來啟動一個全新的實例:
objShell.Run "iexplore.exe"
就是這樣。接下來,使用 Sleep 方法將腳本暫停 60 秒(60,000 毫秒)。60 秒之后,腳本繼續執行,再次循環并重復該過程,直至永遠。如果所需時間間隔不是 60 秒,調整該值即可。例如,下面這行代碼將每 30 秒(30,000 毫秒)進行一次檢查:
Wscript.Sleep 30000
下面的代碼將每 10 分鐘(60,000 毫秒/每分鐘乘以 10 分鐘)運行一次檢查:
Wscript.Sleep 600000
不可否認,該代碼僅每 10 分鐘檢查一次 Internet Explorer 是否在工作。對于腳本專家來說,就沒有必要再每 10 分鐘檢查一次他們是否在工作:畢竟,有沒有腳本,您都知道該問題的答案。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美一级在线免费 | 黄色av片在线观看 | 中国av免费在线观看 | 一级裸体视频 | 免费在线观看毛片 | 在线看免费观看av | 日本娇小videos高潮 | 中文字幕h | 欧美黄色看 | 免费欧美一级视频 | 一区二区三区日韩电影 | 黄色av免费网站 | 久久99精品久久久久久秒播放器 | 国产精品视频yy9299一区 | 国产大片在线观看 | 国产精品啪一品二区三区粉嫩 | 亚洲片在线观看 | 51国产偷自视频区视频小蝌蚪 | 看免费5xxaaa毛片 | www.17c亚洲蜜桃 | 欧美性生活区 | 久草亚洲视频 | 宅男噜噜噜66一区二区 | 密室逃脱第一季免费观看完整在线 | av在线看网站 | jizzyouxxxx| 香蕉视频99 | 黄色片网站在线免费观看 | 做爰裸体激情2 | 久久国产精品电影 | 国产91中文字幕 | 欧美国产91 | 久久精品国产清自在天天线 | 欧美日韩在线视频一区 | 欧美性生活免费视频 | 欧美成人精品一区二区 | 午夜在线观看视频网站 | av免费大全| 精品国产乱码久久久久久久 | 久久成人国产精品 | 国产在线一区二区三区 |