Windows有一個功能,可以自動讀取驅動器(硬盤分區、光驅、U盤均可)下的AutoRun.inf文件,我們可以通過編制該文件實現操縱磁盤驅動器的功能。
我們先來個簡單的,修改硬盤的盤符圖標,并在操作分區是加入快捷操作某個程序的功能。在D盤新建一個文本文件,在里邊輸入:[AutoRun]
Icon=D:\123.ico
//Icon用于設置盤符圖標,這個圖標必須為ico格式(可以用ACDSee將其他格式的圖片轉換為ico格式,或者將BMP的文件后綴直接改為ICO)
Open=D:\foobar2000.exe D:\123.fpl
//Open字段表示雙擊盤符時運行的程序,fpl文件是foobar的播放列表文件(winamp的是m3u文件)
保存該文件,將其命名為:AutoRun.inf即可。但是如果是雙擊的話,并不一定能滿足我們的要求,這樣會影響我們正常的訪問硬盤分區,我們其實可以把音樂播放功能加到右鍵菜單里,在剛才的文件中加入:
shell\1=用foobar聽歌
shell\1\command\=D:\foobar2000.exe D:\123.fpl
保存文件,再右擊硬盤圖標,你就可以在彈出菜單中找到“用foobar聽歌”的菜單了。
同樣的方法你可以在右鍵菜單中加入很多功能,或者在雙擊硬盤盤符時加入更多的動作。但是這樣可能就會有危險產生,例如黑客只有向你硬盤中拷貝文件的權限,他就完全可以編制一個這樣的INF文件,用Open打開一個其事先拷貝到硬盤中的木馬或病毒文件。所以為了安全,有時我們需要考慮在驅動器上禁用INF功能。
最直接的方法當然是關閉硬盤讀取AutoRun.inf文件的功能,選擇“開始→運行”,輸入:regedit,回車后打開注冊表編輯器,定位到:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Exploer,雙擊右側的“NoDriveTypeAutoRun”,其默認值是95,將其改為9D,然后打開任務管理器,將Explorer結束運行,并重新運行一次即可生效,硬盤讀取AutoRun.inf的功能也就不再有用,如圖5所示。
圖5 禁用自動讀取AutoRun.inf功能
如果你還是覺得不踏實,就干脆禁用掉INF運行功能,打開注冊表編輯器,定位到:HKEY_LOCAL_MACHINE\Software\CLASSES\.inf,雙擊右側的“默認”,將原來的:inffile,改為:txtfile即可,不過這樣修改影響甚大,請謹慎使用。
INF文件功能強大這里介紹的僅僅是冰山一角,INF文件其他的功能例如用INF文件自動安裝操作系統,鎖定/解鎖注冊表,修改鼠標右鍵菜單等,讀者還可自行嘗試。