flashstar
驱动牛犊
驱动牛犊
  • 注册日期2007-06-26
  • 最后登录2008-02-25
  • 粉丝0
  • 关注0
  • 积分270分
  • 威望28点
  • 贡献值0点
  • 好评度27点
  • 原创分0分
  • 专家分0分
阅读:1185回复:2

求救:发现DDK自带的例子Packet中一个奇怪的事情!请帮忙看看!

楼主#
更多 发布于:2007-07-31 10:54
在Packet例子中,有一个packet.h头文件,里面定义了一个全局变量:GLOBAL Globals;
typedef struct _GLOBAL
{
    PDRIVER_OBJECT DriverObject;//HUHB 在DriverEntry中初始化

    NDIS_HANDLE    NdisProtocolHandle; //HUHB 在DriverEntry中初始化

    //
    // Path to the driver's Services Key in the registry
    //

    UNICODE_STRING RegistryPath;//HUHB 在DriverEntry中初始化


    //
    // List of deviceobjecs that are created for every
    // adapter we bind to.
    //

    LIST_ENTRY  AdapterList;
    KSPIN_LOCK  GlobalLock; // To synchronize access to the list.

    //
    // Control deviceObject for the driver.
    //

    PDEVICE_OBJECT  ControlDeviceObject;//HUHB 在DriverEntry中初始化


} GLOBAL, *PGLOBAL;

然后这个头文件在packet.c read.c write.c openclos.c中都被include进来了,
这样编译的时候肯定会报重复定义的错啊,可是为什么编译器不报错啊?
奇怪,请高手指点!
zhaock
驱动太牛
驱动太牛
  • 注册日期2002-01-26
  • 最后登录2018-06-02
  • 粉丝3
  • 关注2
  • 积分73328分
  • 威望362317点
  • 贡献值1点
  • 好评度226点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2007-08-01 11:37
不要用2k ddk 的packet,功能很不完善,用xp ddk的ndisuio
flashstar
驱动牛犊
驱动牛犊
  • 注册日期2007-06-26
  • 最后登录2008-02-25
  • 粉丝0
  • 关注0
  • 积分270分
  • 威望28点
  • 贡献值0点
  • 好评度27点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-08-06 09:28
不知道怎么回事,在.C文件里把一个变量定义好几次编译居然可以顺利通过,搞不懂!
游客

返回顶部