以下以Notepad++為例,示範如何檢查是否運作,使用排程自動執行。
1. 製作 checknpd.bat 檢查並執行Notepad++:
先確認 Notepad++的執行路徑 及 執行檔:
D:\Program Files\Notepad++
Notepad++.exe
仿造填入checknpd.bat中
@echo off tasklist /FI "IMAGENAME eq Notepad++.exe" 2>NUL | find /I /N "Notepad++.exe" >NUL if "%ERRORLEVEL%"=="0" ( exit ) else ( PUSHD cd /d "D:\Program Files\Notepad++" start Notepad++.exe POPD )
完成後,嘗試直接執行 checknpd.bat,確認是否成功。
2. 配置到windows排程中:
在windows的啟動列搜尋"工作排程器",出現如下的畫面:
可先於左邊的 "工作排程器程式庫" 增加自己使用的類別,避免與其他的排程混合在一起,不容易管理。之後點選右邊 "建立工作...",建立新的排程。
需要填寫的是 "一般"、"觸發程序"、動作 三個分頁。
"一般"頁面填寫的資訊是提供識別,就依照個人喜好填寫。
"觸發程序"頁面,點選左下角"新增"按鈕後,如上圖所示。選擇僅一次,然後下方勾選"重複工作每隔",填入想要檢查的時間間隔(可以用鍵盤修改內容),並調整右邊的"持續時間為"不限制。確認後編輯動作頁面。
"動作"頁面,點選左下角"新增"按鈕後,如上圖所示。
在"程式或指令碼"填入(或用右邊的瀏覽選擇)剛剛寫好的checknpd.bat,按下確定後,便完成自動排程。
之後時間到就會自動執行checknpd.bat,如果notepad++.exe沒有執行,就會自動執行。
3. 解決每次排程執行時,windows命令視窗閃現又消失的問題:
當每次排程執行時,windows執行batch會產生命令視窗,執行完畢就消失,讓人覺得很不舒服,要解決此問題,可以從網路上尋找invis.vbs或直接編輯invis.vbs檔案(可與checknpd.bat放置同一目錄下),內文如下:
set args = WScript.Arguments num = args.Count if num = 0 then WScript.Echo "Usage: [CScript | WScript] invis.vbs aScript.bat <some script arguments>" WScript.Quit 1 end if sargs = "" if num > 1 then sargs = " " for k = 1 to num - 1 anArg = args.Item(k) sargs = sargs & anArg & " " next end if Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run """" & WScript.Arguments(0) & """" & sargs, 0, False
完成後,調整排程的"動作"命令如下:
"程式或指令碼"改為 wscript ,下方的新增引數填入,invis.vbs 與 checknpd.bat,如下:
D:\Temp\invis.vbs D:\Temp\checknpd.bat如此排程執行時,就不會再有命令視窗閃爍的問題。
沒有留言:
張貼留言