65.9K
CodeProject 正在变化。 阅读更多。
Home

VC2003 的 DDK 项目向导

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.36/5 (19投票s)

2003年11月15日

CPOL

2分钟阅读

viewsIcon

832449

downloadIcon

2517

适用于 VC2003 的 DDK 项目向导。

引言

我过去用命令行编译 DDK 驱动程序,但一直不习惯。所以我心想,为什么不编写一个向导来完成这个任务呢?

于是我做了,并且可以编译 DDK 的示例,甚至 WinpCap 的 NDIS 驱动程序。

背景

我借鉴了 QuickSYS 的一些文件,非常感谢作者。

使用代码

首先,您可能需要安装 DDK。此向导依赖于环境变量 "ddkroot"。 如果您想构建 NDIS 驱动程序,请将 NDIS.lib 添加到您的项目中。

对于常规使用,只需创建一个新项目,选择“DDK 向导”,然后按“完成”按钮,一切就都好了。

如果您想编译 DDK 的示例,可以参考示例目录中的一个名为“sources”的文件。其中定义了一些宏。

例如,您可能想编译 DDK 的 Passthru 示例

  1. 使用此向导创建一个新项目,然后删除向导创建的 ch 文件,因为我们现在不需要它们。
  2. 将文件 (*.c, *.h, *.rc) 从 ntddk\src\network\ndis\passthru 复制到项目目录。
  3. 将这些文件添加到项目中。
  4. “sources”文件如下所示
    //...
    TARGETNAME=PASSTHRU
    TARGETPATH=obj 
    TARGETTYPE=DRIVER 
    TARGETLIBS=$(DDK_LIB_PATH)\ndis.lib 
    C_DEFINES=$(C_DEFINES) -DNDIS40 -DNDIS_MINIPORT_DRIVER -DNDIS40_MINIPORT 
    INCLUDES=..\..\inc 
    SOURCES= passthru.c \ protocol.c \ miniport.c \ passthru.rc 
    //...

那么现在你知道接下来该怎么做了吗?

NDIS.LIB 添加到您的项目中,并将 NDIS40NDIS_MINIPORT_DRIVERNDIS40_MINIPORT 添加到预编译宏中。然后构建调试和发布版本,除了某些警告外,您将获得成功。

关注点

这是我的第一个 DDK 向导,而且 DDK 对我来说很难掌握。所以这个向导可能不会很好。 我在 WIN2K DDK 中测试了所有内容。 如果我有足够的时间,我会编写一个 NDIS 项目向导。 可能会支持网卡、IM、TDI 等。

最后,对我的拙劣英语表示歉意。

历史

11-07-2003 - 向导脚本现在可以运行了。

© . All rights reserved.