2016-03-14 46 views
-1

我正在打開一個批處理文件,打開它後在設定的時間關閉程序。因此,例如,如果我打開我的電子郵件程序,批處理文件將被觸發,兩分鐘後,我的電子郵件將自動關閉。如果可能的話,我還想讓命令窗口打開隱藏。我嘗試使用事件記錄器和任務計劃程序,但我無法快速完成任務。
有什麼建議嗎?
謝謝!打開後在設定的時間關閉程序

回答

0

運行命令隱藏

Set WshShell = WScript.CreateObject("WScript.Shell") 
WshShell.Run "cmd /k dir c:\windows\*.*", 0, false 

該檢測時的應用程序退出。這裏當記事本退出時重新啓動它。您可以修改它以處理啓動,停止或兩者。 Win32_ProcessStopTrace,Win32_ProcessStartTraceWin32_ProcessStartStopTrace

Set WshShell = WScript.CreateObject("WScript.Shell") 
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2") 
Set objEvents = objWMIService.ExecNotificationQuery _ 
    ("SELECT * FROM Win32_ProcessStopTrace") 

Do 
    Set objReceivedEvent = objEvents.NextEvent 
    msgbox objReceivedEvent.ProcessName 
    If lcase(objReceivedEvent.ProcessName) = lcase("Notepad.exe") then 
     Msgbox "Process exited with exit code " & objReceivedEvent.ExitStatus 
     WshShell.Run "c:\Windows\notepad.exe", 1, false 
    End If 
Loop 

這會經歷正在運行的進程列表,以及計算器是否終止它。

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") 

Set colItems = objWMIService.ExecQuery("Select * From Win32_Process") 

For Each objItem in colItems 
    'msgbox objItem.ProcessID & " " & objItem.CommandLine 
    If objItem.name = "Calculator.exe" then objItem.terminate 
Next 

要腳本等待。從幫助處開始https://www.microsoft.com/en-au/download/details.aspx?id=2764

暫停腳本執行一段指定的時間,然後繼續執行。

object.Sleep(intTime) 

對象 WScript對象。

intTime 整數值,指示您希望腳本進程處於非活動狀態的時間間隔(以毫秒爲單位)。

所以wscript.sleep 120000爲兩分鐘

我將離開你將比分扳成在一起。

相關問題