【原創(chuàng)】改造優(yōu)化免費(fèi)殺軟 Dr.Web Cureit 實(shí)現(xiàn)自動(dòng)更新和其他需求 | |
重裝系統(tǒng)后沒裝殺毒軟件裸奔了一段時(shí)間,感覺還不錯(cuò),但也還需要一個(gè)殺毒軟件以備不時(shí)之需,特別傾向于可以免安裝的免費(fèi)軟件,只在需要時(shí)啟動(dòng)查殺病毒。經(jīng)過挑選試用,免費(fèi)的 Dr.Web Cureit 基本能滿足以上要求,而且憑 Dr.Web 的威名應(yīng)該是不錯(cuò)的。
初試有幾點(diǎn)不滿意:1、不支持自動(dòng)更新;2、一個(gè)文件,運(yùn)行時(shí)解壓后執(zhí)行,效率不高;3、默認(rèn)執(zhí)行后不載入引擎,而要手工選擇是“升級(jí)”還是“開始”殺毒;4、一上來就開始掃描;5、會(huì)彈廣告(雖然很簡潔彈出也不頻繁--這點(diǎn)雖然不喜歡,但還可以忍受,畢竟是免費(fèi)軟件。)
下面以我解決問題的先后順序來說明:
一、第2、3點(diǎn)的解決
經(jīng)過監(jiān)視進(jìn)程,知道運(yùn)行后是解壓到臨時(shí)目錄,通過執(zhí)行 _start.exe 來載入殺毒引擎(setup.exe),但手工解壓到自定義目錄后執(zhí)行 setup.exe 卻不成功,而用 _start.exe 就可以啟動(dòng)。
通過看用戶目錄下的 log 文件,看到實(shí)際上 setup.exe 加個(gè)參數(shù)指明配置文件(/ini:setup_XP.ini)就能運(yùn)行了。而且這樣一來原來的廣告也不再出現(xiàn)了,可見 _start.exe 不過是加參數(shù)運(yùn)行 setup.exe + 廣告。
因此,只要啟動(dòng) setup.exe 時(shí)加上參數(shù)就行了
setup.exe /ini:setup_XP.ini
或者用快捷方式加參數(shù)、或者用Hoekey 等快捷工具加參數(shù)、或者在TC里新建工具按鈕加參數(shù)......憑習(xí)慣自己選擇吧。
二、第4點(diǎn)的解決
軟件一上來就開始掃描,每次都要手工停止后再干自己想干的事,比較煩人。軟件的界面有設(shè)置項(xiàng),但里面沒有任何這方面的設(shè)置。
看其解壓后的目錄,內(nèi)有 setup_XP.ini (就是上面提到的文件了),瀏覽一遍其中的參數(shù),有一個(gè) TestStartup = Yes 項(xiàng),猜測差不多就是它,改成 TestStartup = No 之后,果然啟動(dòng)后處于等待指令狀態(tài)。
順便把
LogFileName = %USERPROFILE%\DoctorWeb\CureIt.log
MoveFilesTo = %USERPROFILE%\DoctorWeb\Quarantine\
ExcludePaths = %USERPROFILE%\DoctorWeb\Quarantine\
項(xiàng)改成解壓后的工作目錄(默認(rèn)在系統(tǒng)用戶目錄)
其他的如排除文件列表
ExcludeFiles = "FAR.exe","mirc.exe","LanHelper.exe","LanSee.exe"
也可以在這里一并把需要排除的文件加上(上面幾個(gè)都是在第一次掃描時(shí)查出來的可疑文件,當(dāng)時(shí)還把自己嚇了一跳,把幾個(gè)文件上傳到網(wǎng)上的殺毒引擎,多數(shù)的殺軟都沒查出問題,看來和 Dr.Web 獨(dú)特的引擎有關(guān),也好,寧可錯(cuò)殺不可漏過^_^,不過還是需要設(shè)置一下查殺病毒的規(guī)則的,由于我對(duì)自己的機(jī)器比較自信,因此設(shè)成了只查不殺,最后自己手工排除)
三、自動(dòng)更新的實(shí)現(xiàn)
1、自動(dòng)下載
Cureit 的升級(jí)需要手工下載,由于它打包成了一個(gè)可執(zhí)行文件,當(dāng)然如果不介意上面的幾點(diǎn)不滿意的地方,要實(shí)現(xiàn)自動(dòng)下載很簡單,很多工具都可以實(shí)現(xiàn)。這里用了命令行下載工具 wget 結(jié)合計(jì)劃任務(wù)程序來實(shí)現(xiàn)。
建立一個(gè)計(jì)劃任務(wù)定時(shí)執(zhí)行下面的命令就可以了,這里為了后面解壓方便,直接把擴(kuò)展名改為 .zip了:
wget.exe -N -O d:\temp\cureit.zip http://msk.drweb.com/pub/drweb/cureit/cureit.exe
2、刪除目標(biāo)目錄中老的病毒庫文件
這里我的目標(biāo)目錄是 d:\Program Files\DoctorWeb\,由于免費(fèi)的 Cureit 每次都改變病毒定義文件的名稱,升級(jí)后原來的文件就沒用了,需要先清除掉,但又必須保留原來的配置文件 setup_XP.ini,這就需要按排除列表來刪除無用文件了。
要實(shí)現(xiàn)這個(gè)目的,有各種不同的辦法,復(fù)雜點(diǎn)可以編寫一小段批處理文件,我這里用到了系統(tǒng)自帶的 del 命令的排除指定類型文件的功能。首先把需要排除的 CureIt.log、setup_XP.ini 和下面講到的 xfilelist.txt 文件類型設(shè)為“系統(tǒng)”,結(jié)合計(jì)劃任務(wù)運(yùn)行下面的命令:
del /A:-S "d:\Program Files\DoctorWeb\"* /Q
3、按忽略列表自動(dòng)解壓文件
自動(dòng)解壓至目標(biāo)目錄,需要解決的問題是不能覆蓋相關(guān)配置文件 setup_XP.ini,同時(shí)原包中還有其他的語言文件和俄文幫助等等無用的東西,也可以一并忽略掉(誰叫我是完美主義者呢^_^)
找來找去,7zip 就支持按忽略列表解壓文件,建立一個(gè)忽略文件列表 xfilelist.txt,包含上面所說的文件和 xfilelist.txt 本身。
也是用計(jì)劃任務(wù)運(yùn)行命令行來實(shí)現(xiàn):
7z.exe x d:\temp\cureit.zip -o"d:\Program Files\DoctorWeb\" -x@"d:\Program Files\DoctorWeb\xfilelist.txt" -aoa
以上三點(diǎn)都要求結(jié)合計(jì)劃任務(wù)來實(shí)現(xiàn),可以按時(shí)間來安排在系統(tǒng)比較空閑的時(shí)段,并按順序執(zhí)行??紤]下載可能會(huì)因?yàn)榫W(wǎng)速原因影響完成時(shí)間,可以把1的命令安排在后面兩個(gè)命令之前一段時(shí)間(特別是要在解壓之前留出足夠的下載時(shí)間)。
也可以每天多次執(zhí)行以上升級(jí)的過程。這樣你就可以隨時(shí)擁有一個(gè)免費(fèi)好用的殺毒工具了