我有一个程序(实际上是一个游戏),它使用一个.wad
文件来存储它的资源。是否有可能以某种方式拦截对该文件的访问并模拟它?
例如,我想动态替换一些精灵。除了创建一个新文件之外,是否有可能让这个游戏认为它正在访问.wad
,但实际上我们正在处理它的请求?
我有一个程序(实际上是一个游戏),它使用一个.wad
文件来存储它的资源。是否有可能以某种方式拦截对该文件的访问并模拟它?
例如,我想动态替换一些精灵。除了创建一个新文件之外,是否有可能让这个游戏认为它正在访问.wad
,但实际上我们正在处理它的请求?
在 Windows 下,文件系统过滤器驱动程序提供了一个低级 I/O 挂钩,程序可以注册该挂钩以将 I/O 请求传递给文件系统。
过滤器驱动程序还可以更改通过过滤器传递的数据或拒绝文件系统请求。
此类内核模式代码的实现、维护和支持并非易事。
无论如何,你也可以看看: