2013-06-06 85 views
1

我要寫這可以防止用戶在桌面上創建文件(除快捷方式文件(* .LNK)和目錄)的Windows XP的一個功能。 經過一番研究,我得出的結論是,這可以通過使用文件系統過濾驅動程序或微型驅動程序來完成。由於無法加載/保存漫遊配置文件,因此更改NTFS權限不起作用。阻止文件創建

我看看DDK樣本。例如cancelSafe。他們取消了I/O,但這不是我想要的。我見過阻止訪問受感染文件的反病毒程序,操作系統返回了錯誤代碼5:訪問被拒絕。

我想正是相同的行爲。那麼我如何在過濾器驅動程序中實現這一點?

回答

3
  1. 你需要寫minifilter driver並連接到適當的音量,其中桌面文件夾是否存在。
  2. 在微過濾器,過濾器IRP_MJ_CREATE
  3. 在術前回調的IRP,檢查文件路徑,如果在桌面文件夾路徑失敗的IRP並不會進一步傳遞下來的堆棧。
  4. IRP可以通過術前的回調完成,並設置適當的狀態,在IoStatus.Status失敗。在Completing an I/O Operation in a Preoperation Callback Routine
+0

這工作更多信息!非常感謝你。 – AcidJunkie