【问题标题】:Block file creation阻止文件创建
【发布时间】:2013-06-06 08:42:20
【问题描述】:

我必须编写一个功能来防止用户在 Windows XP 的桌面上创建文件(快捷方式文件 (*.lnk) 和目录除外)。 经过一些研究,我得出结论,这可以使用文件系统过滤器驱动程序或微型驱动程序来完成。由于无法加载/保存漫游配置文件,因此无法更改 NTFS 权限。

我查看了 DDK 示例。例如取消安全。他们正在取消 I/O,但这不是我想要的。我见过防病毒程序阻止了对受感染文件的访问,并且操作系统返回错误代码 5:访问被拒绝。

我想要完全相同的行为。那么如何在过滤器驱动程序中实现这一点呢?

【问题讨论】:

    标签: c windows filter driver minifilter


    【解决方案1】:
    1. 您需要写minifilter driver 并附加到桌面文件夹所在的相应卷。
    2. 在微过滤器中,过滤 IRP_MJ_CREATE
    3. 在 IRP 的 PreOperation 回调中,检查文件路径,如果其在桌面文件夹路径下的 IRP 失败并且不要将其进一步向下传递到堆栈。
    4. IRP 可以通过在预操作回调中完成并在IoStatus.Status 中设置适当的状态来失败。更多信息Completing an I/O Operation in a Preoperation Callback Routine

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-17
      • 2020-02-12
      • 2016-07-06
      • 2012-03-07
      相关资源
      最近更新 更多