semiapple
驱动牛犊
驱动牛犊
  • 注册日期2010-10-28
  • 最后登录2010-11-13
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1655回复:3

驱动程序开发详解书中的问题

楼主#
更多 发布于:2010-10-28 16:23
经常在代码中看到这样几行:
PIO_STACK_LOCATION stack = IoGetNextIrpStackLocation(pNewIrp);
stack->FileObject = FileObject;
NTSTATUS status = IoCallDriver(DeviceObject, pNewIrp);
我的问题是为什么要将文件对象给下一层的I/O堆栈?IoCallDriver是什么东东?

谢谢大家指点!
wanghui219
禁止发言
禁止发言
  • 注册日期2007-08-28
  • 最后登录2019-07-29
  • 粉丝4
  • 关注3
  • 积分101166分
  • 威望505351点
  • 贡献值0点
  • 好评度137点
  • 原创分0分
  • 专家分4分
  • 社区居民
沙发#
发布于:2010-11-01 09:41
用户被禁言,该主题自动屏蔽!
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
板凳#
发布于:2010-10-31 16:38
iocalldriver是将irp传递给下层驱动处理。

原因是windows的驱动是分层的。请仔细看一下相关的书,建议看 walter oney 的programming the wdm
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
catface
驱动小牛
驱动小牛
  • 注册日期2009-01-11
  • 最后登录2014-03-09
  • 粉丝1
  • 关注1
  • 积分155分
  • 威望1341点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分2分
地板#
发布于:2010-10-28 16:29
楼主对整个驱动的结构 和 IRP的走向需要在看看
游客

返回顶部