gfrsmall
驱动牛犊
驱动牛犊
  • 注册日期2009-09-17
  • 最后登录2010-05-03
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望21点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1920回复:2

纳闷了N天的一个菜鸟驱动问题

楼主#
更多 发布于:2010-04-30 18:27
怎么能使以下编译通过,就是想把这个NdisMSleep(1);加下去就是找不到头文件
纳闷了N天了......我是新手请各位路过的大哥帮下小弟....!!!
//////////////////////////////////////////////////
// a.cpp文件

#define NDIS50 1

extern "C"
{
#include <ntddk.h>
#include <ndis.h>
}

#pragma comment(lib,"ndis")

// 驱动程序加载时调用DriverEntry例程
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObj, PUNICODE_STRING pRegistryString)
{
NdisMSleep(1);
// 请视情况返回DriverEntry例程执行结果
return STATUS_DEVICE_CONFIGURATION_ERROR;
}


编译时错误如下,还有加NdisMRegisterDevice这类涵数都是同样报错,但加协议驱动的涵数没问题
是缺少了什么头文件?找了N天了还是搞不懂!!!
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
a.cpp
E:\vc_code\a\a.cpp(17) : error C2065: 'NdisMSleep' : undeclared identifier
Error executing cl.exe.

a.sys - 1 error(s), 0 warning(s)
45℃深蓝
Pegram
论坛版主
论坛版主
  • 注册日期2005-12-03
  • 最后登录2013-08-23
  • 粉丝13
  • 关注5
  • 积分1333分
  • 威望4717点
  • 贡献值1点
  • 好评度78点
  • 原创分0分
  • 专家分2分
沙发#
发布于:2010-05-01 15:54
去掉#include <ntddk.h>试试。
在DriverEntry前面加extern "C".
《寒江独钓》与《竹林蹊径》的合作作者。精通USB开发,设计了CY001 USB驱动套件(http://bbs.driverdevelop.com/read.php?tid-119314.html)。
drivercoding
驱动牛犊
驱动牛犊
  • 注册日期2009-10-19
  • 最后登录2013-08-17
  • 粉丝0
  • 关注0
  • 积分18分
  • 威望191点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2010-05-04 00:49
NdisMxxx函数都是所谓的NDIS miniport driver functions. 你要编译这个驱动的话,需要定义合适的NDIS_MINIPORT_DRIVER和NDIS51_MINIPORT.

好好看看这篇文章。http://www.wd-3.com/031504/NDISCompile.htm
游客

返回顶部