txftxf
驱动牛犊
驱动牛犊
  • 注册日期2001-07-11
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1809回复:4

请问截获文件读操作消息后,如何修改文件读返回的数据

楼主#
更多 发布于:2001-07-19 10:26
在截获对特定文件的读消息后,我想从网络(或者某块缓冲区)读取数据,然后返回给系统,不知那位大虾指教一下如何实现?是不是修改某块文件系统缓冲区,在哪?^-^
thanks
jeosph
驱动中牛
驱动中牛
  • 注册日期2001-04-19
  • 最后登录2006-08-08
  • 粉丝0
  • 关注0
  • 积分96分
  • 威望11点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-07-19 10:30
你说的没错!
txftxf
驱动牛犊
驱动牛犊
  • 注册日期2001-07-11
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-07-19 10:37
能不能具体点?我这边资料很少.THANKS
lushan
驱动牛犊
驱动牛犊
  • 注册日期2001-06-26
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-07-24 19:43
在IRP_MJ_READ里取到本次读的调用方缓冲区,直接改。

#define CdMapUserBuffer(IC, UB) { \
*(UB) = (PVOID) ( ((IC)->MdlAddress == NULL) ? \
(IC)->UserBuffer : \
(MmGetSystemAddressForMdlSafe( (IC)->MdlAddress, NormalPagePriority))); \
}

CdMapUserBuffer(Irp, &UserBuffer);

不过我是在2000上用的,据说NT是错的。
sharon
驱动牛犊
驱动牛犊
  • 注册日期2001-06-06
  • 最后登录2001-12-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2001-08-24 15:08
请问在Win9X VxD里怎么做?
一学就会
游客

返回顶部