1. U盤過濾驅動如何禁用U盤
在Windows資源管理器中,進入到「系統盤:\WINDOWS\inf」目錄,找到名為「Usbstor.pnf」的文件,右鍵回點擊該文件,在彈出答菜單中選擇「屬性」,然後切換到「安全」標簽頁,在「組或用戶名稱」框中選中要禁止的用戶組,接著在用戶組的許可權框中,選中「完全控制」後面的「拒絕」復選框,最後點擊「確定」按鈕。
再使用以上方法,找到「usbstor.inf」文件並在安全標簽頁中設置為拒絕該組的用戶訪問,其操作過程同上。完成了以上設置後,該組中的用戶就無法安裝USB設備驅動程序了,這樣就達到禁用的目的。
2. 怎麼用代碼實現WDM文件過濾驅動安裝
為了讓這個驅動被系統載入,必須創建一個inf文件。由於是使用現成的例子,因此這一步也可以省下來。直接右鍵點擊例子中的inf文件,在彈出的菜單中選擇「安裝」即可。
這里要注意的是,inf中的StartType參數,它可以控制驅動被載入的方式:
SERVICE_AUTO_START (2) 安全模式下不會自動載入 SERVICE_BOOT_START (0) 在系統安全模式下啟動時 驅動也會自動載入
SERVICE_DEMAND_START(3) 則驅動不會自動載入
因為是測試,我使用SERVICE_DEMAND_START,即由手動載入驅動。例子是miniFilter驅動,因此可以在命令提示行中用「fltmc load 驅動名稱」來載入,相應的卸載是「fltmc unload」。如果是其它驅動,則用"net start 驅動名稱"來載入,相應的卸載是"net stop 驅動名稱"。注意驅動名稱不是文件名,而是inf中[Settings]的ServiceName值。驅動要發布時,也可以通過CreateService & StartService API來動態安裝。
Inf文件的寫法,可以參考例子,或者拿現成的改一改。下面的是摘自驅動開發網的
XiangXiangRen整理的Inf文件,改起來比較方便,謝謝XiangXiangRen