DIY小紅傘自動關機助手(原創)

本文內容已被 [ 油菜子 ] 在 2009-02-07 10:39:30 編輯過。如有問題,請報告版主或論壇管理刪除.

DIY小紅傘自動關機助手(原創)

大名鼎鼎的德國小紅傘[AntiVir]殺毒軟件在互聯網上享有極好口碑。
它的綜合性能排在世界前三名,單項性能也超過很多收費軟件。
獲得的好評包括界麵簡潔友好,功能強大,算法嚴謹,故而效率高
而誤判率低。特別適合普通的乃至專業級的電腦用戶使用。龐大的
病毒數據庫是用戶放心使用的可靠保證。更值得一提的是,它的個
人版是永久免費的,可以在線升級病毒庫。

如此好的東東為何不用?然而,它的唯一缺陷是沒有自動關機功能。
大家都知道,現在個人係統都很大,一次掃描再快也要個把小時,
誰能等得了?!或許這也是開發商的苦衷吧-----用此辦法逼迫用戶升
級到收費版!

筆者寫了一個小程序,解決了自動關機的問題。現發布beta版,供
大家使用。如果用什麽問題和建議,歡迎給我發“悄悄話”,以便改進。

【】程序的製作

先將下麵的代碼複製到 notepad 中,以ANSI形式保存,然後
更改文件的後綴為 .cdm 即可。(簡單吧~~ ^v^)

【】注意事項
運行本程序前,請特別檢查小紅傘的自動處理項設置。
方法是:
小紅傘[AntiVir]主界麵->configuration->scaner->scan->
action for concerning files:選擇automatic+quarantine
否則小紅傘將彈出對話框詢問處置方法,無法實現自動關機。
【】運行環境
winXP home;小紅傘AntiVir personalEdtion (product 8.2.9.337)

【】授權:免費使用,但不能用於商業或盈利目的

【】如果出現“找不到文件”的情況:
由於小紅傘的版本不同,默認安裝路徑可能有所不同。
用戶應仔細核對小紅傘[AntiVir]的安裝路徑。如果不在默認
路徑,請更改變量str的賦值,即“=”符號右邊的部分。

【】本程序每次運行將產生一個config profile 臨時文件,後綴名為
“.avp”,放置在文件夾
C:\Documents and Settings\Owner\Local Settings\Temp
可手動刪除。
【】關機程序的延時設置
調整各選項中 "shutdown -s -t 5" 命令最後位的數值(秒)


【】測試 (可選項)
本程序啟動版麵上設有一個“測試”選項。正式使用本程
序前請測試一下,主要是為了檢驗文件路徑是否正確,以確保
各個程序的順利運行。這需要用戶自己動手做兩個小文件

一)用notepad寫出如下代碼,然後保存文件名為:模擬掃描.bat
代碼:@echo off
echo. ........本窗口為模擬掃描窗口,關閉後將激活模擬關機程序
echo. 按任意鍵退出...
pause>nul
exit
將“模擬掃描.bat”文件存放到C:\Documents and Settings\Owner\Local Settings\Temp

二)用notepad寫出如下代碼,然後保存文件名為:模擬關機.bat
代碼:@echo off
echo. ...... 測試通過,調用真正的關機程序應該沒問題。
pause
exit
將“模擬掃描.bat”文件存放到C:\Program Files\Avira\AntiVir PersonalEdition Classic
(小紅傘的默認安裝路徑)


全部完成。享受一下DIY的快樂吧~~~~~^v^


::===========下麵是主程序代碼===================


:://小紅傘自動關機助手 V.0.1beta built0901
:://作者:油菜子
:://留言:頂頂郵局http://www./club/postoffice.aspx
:://聲明:作者保留對本程序的一切權利
:://授權:免費使用,但不能用於盈利目的
::【注釋】
::============

@ECHO OFF

CLS
color 0a

set str=C:\Program Files\Avira\AntiVir PersonalEdition Classic
set path=%path%;%str%
set n=%RANDOM%

::MENU
ECHO.
ECHO. *** 調用小紅傘[AntiVir]殺毒後關機 ***
ECHO.
ECHO. 1 隻掃描係統文件夾(c:\windows\system32)
ECHO.
ECHO. 2 對係統做全麵掃描
ECHO.
ECHO. 3 掃描本機全部硬盤
ECHO.
ECHO. 4 掃描本機全部驅動器(包括便攜盤、光驅,USB等)
ECHO.
ECHO. -------------------------
ECHO.
ECHO. 5 測試能否自動關機
ECHO.
echo. 6 什麽都不做,退出本程序
ECHO.
echo. 請輸入選擇項目的序號:
echo.

set /p ID=

if "%id%"=="1" GOTO TOSYSDIR

if "%id%"=="2" GOTO TOSYSSCAN

if "%id%"=="3" GOTO TOALLDISCS

if "%id%"=="4" GOTO TOALLDRIVES

if "%id%"=="5" GOTO TESTSCAN

if "%id%"=="6" exit

:TOSYSDIR

>"%temp%\%n%.avp" (
echo [CFG]
echo GuiMode=1
echo ExitMode=2
echo [SEARCH]
echo Parameter=0x00000000
echo Path0=%SYSDIR%
echo [CONTROLCENTER]
echo ProfileType=4
echo ProfileName=Windows System Directory
echo ProfileDescription=This profile only scans the Windows system directory of your system["c:\windows\system32"]for viruses or unwanted programs.
)
start /WAIT avscan.exe /CFG="%temp%\%n%.avp"
shutdown -s -t 5
exit/b

:TOSYSSCAN

>"%temp%\%n%.avp" (
echo [CFG]
echo GuiMode=1
echo ExitMode=2
echo SystemScan=1
echo [SEARCH]
echo Parameter=0x00001000
echo [CONTROLCENTER]
echo ProfileType=11
echo ProfileName=Complete system scan
echo ProfileDescription=This profile carries out a complete system scan.
)
start /WAIT avscan.exe /CFG="%temp%\%n%.avp"
shutdown -s -t 5
exit/b

:TOALLDISCS

>"%temp%\%n%.avp" (
echo [CFG]
echo GuiMode=1
echo ExitMode=2
echo SystemScan=1
echo [SEARCH]
echo Parameter=0x00001000
echo [CONTROLCENTER]
echo ProfileType=6
echo ProfileName=Local Hard Disks
echo ProfileDescription=This profile scans all local hard disks on your system for viruses or unwanted programs.
)
start /WAIT avscan.exe /CFG="%temp%\%n%.avp"
shutdown -s -t 5
exit/b

:TOALLDRIVES

>"%temp%\%n%.avp" (
echo [CFG]
echo GuiMode=1
echo ExitMode=2
echo SystemScan=1
echo [SEARCH]
echo Parameter=0x00007000
ECHO [CONTROLCENTER]
ECHO ProfileType=7
ECHO ProfileName=Local Drives
ECHO ProfileDescription=This profile scans all local drives [Hard Disks, Floppy Disk drives, CD-ROM drives, DVD-Drives, USB sticks etc.] on your system for viruses or unwanted programs.
)
start /WAIT avscan.exe /CFG="%temp%\%n%.avp"
shutdown -s -t 5

exit/b

:TESTSCAN

start /wait %temp%\模擬掃描.bat
start 模擬關機.bat

exit/b

所有跟帖: 

頂原創,謝謝分享!! -太平洋- 給 太平洋 發送悄悄話 太平洋 的博客首頁 (0 bytes) () 02/07/2009 postreply 10:40:19

頂! -fireinbox- 給 fireinbox 發送悄悄話 (0 bytes) () 02/07/2009 postreply 13:06:21

先頂再問句外行的話:這程序用的是不是C語言? -不黨- 給 不黨 發送悄悄話 不黨 的博客首頁 (0 bytes) () 02/07/2009 postreply 22:09:01

batch file with win2000/xp extension -tty- 給 tty 發送悄悄話 tty 的博客首頁 (0 bytes) () 02/08/2009 postreply 09:32:10

windows shell scripting -zhangisajoke- 給 zhangisajoke 發送悄悄話 (0 bytes) () 02/10/2009 postreply 13:23:21

請您先登陸,再發跟帖!