苦度人生
驱动牛犊
驱动牛犊
  • 注册日期2006-04-28
  • 最后登录2007-06-18
  • 粉丝0
  • 关注0
  • 积分210分
  • 威望22点
  • 贡献值0点
  • 好评度21点
  • 原创分0分
  • 专家分0分
阅读:1035回复:1

在ndis im驱动中怎样使用ZwCreateFile及其相关函数

楼主#
更多 发布于:2007-02-02 11:05
  我想在ndis im驱动中使用OBJECT_ATTRIBUTES,IO_STATUS_BLOCK,ZwCreateFile,ZwWriteFile,ZwClose之类的东西,以便将信息保存到文件中。但是在build的时候居然说,这些东西都是undeclared identifier。而我在做tdi驱动时,也是这样用的,就没有问题。  
      我是在做完tdi后就继续做ndis了,环境肯定是相同的。难道还需要在source之类的文件中做些特别的配置?

      请哪位高人告诉我为什么?要不然的话,我就只能够使用C中的文件读写操作了
苦度人生
驱动牛犊
驱动牛犊
  • 注册日期2006-04-28
  • 最后登录2007-06-18
  • 粉丝0
  • 关注0
  • 积分210分
  • 威望22点
  • 贡献值0点
  • 好评度21点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-02-03 20:40
问题已经解决!
  我开始的时候,在#include"ndis.h"后添加#include"ntddk.h",没有任何反应。如果是将他们两个的顺序颠倒一下,就会出现许多的重复定义的错误。如果直接在#include"ndis.h"后添加#include“wdm.h”也会出现许多重复定义的错误。
  昨天晚上,我把自己的代码和别人的代码仔细比较了一下,发现在source文件中的C_DEFINE处添加-DNDIS_WDM并且使用wdm.h文件就没有问题了。我用的ndis中间层驱动的框架是朱雁辉那本书上的,source文件中没有DNDIS_WDM而ddk自带的示例驱动的source文件中有DNDIS_WDM。

  我想问一下DNDIS_WDM代表了什么意思,他怎么就有这么大的功能?
游客

返回顶部