首页
社区
课程
招聘
[旧帖] [原创]VS2005 + WDK7.0+DDKWizard配置驱动开发环境 0.00雪花
发表于: 2010-3-30 14:45 3346

[旧帖] [原创]VS2005 + WDK7.0+DDKWizard配置驱动开发环境 0.00雪花

2010-3-30 14:45
3346

首先,依次安装VS2005,WDK,DDKWizard。DDKWizard下载地址169K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3c8V1K9%4N6A6P5X3q4J5k6q4)9J5k6h3q4K6M7$3q4J5j5X3q4V1i4K6u0W2L8X3g2@1i4K6u0r3i4@1g2r3i4@1u0o6i4K6S2o6i4@1f1#2i4K6R3^5i4K6R3$3i4@1f1#2i4K6R3^5i4@1q4n7i4@1f1@1i4@1t1^5i4K6S2n7i4@1f1^5i4@1u0p5i4@1u0p5k6r3c8C8N6$3W2*7j5i4u0V1i4K6g2X3M7$3g2@1N6i4m8Q4x3X3g2W2P5r3g2Q4c8f1k6Q4b7V1y4Q4z5p5y4V1k6r3E0T1N6h3W2D9k6q4)9#2k6X3y4E0k6q4)9J5k6i4A6A6M7q4!0q4c8W2!0n7b7#2)9^5b7#2!0q4y4g2)9&6x3W2)9^5b7$3c8V1K9$3u0#2K9h3I4V1i4K6g2X3j5X3q4@1i4K6u0W2P5X3W2H3i4@1f1K6i4K6R3H3i4K6R3J5

如果WDK的安装路径是D:\WinDDK\7600.16385.0,则复制ddkbuild.cmd和ddkbuild.bat到目录D:\WINDDK\下。

然后,启动VS2005选择菜单“工具”->“选项”->“项目和解决方案”->“VC++目录”,“可执行文件”添加目录:D:\WINDDK;“库文件”添加目录D:\WinDDK\7600.16385.0\lib\wxp;“包含文件”添加目录D:\WinDDK\7600.16385.0\inc\ddk。

最后还要添加系统环境变量WXPBASE = D:\WinDDK\7600.16385.0,配置完成。

启动VS新建项目,在Visual C++项目下便会有个DDK Project选项,在右侧的模板里选择“Driver”即生成一个驱动项目。在DDKWizard中选择windows xp dkk,把下面的复选框的选项都去掉,点击“Finish”即可。F7编译即生成sys驱动文件……

不过DDKWizard 生成的模板不太合我胃口,Driver模板太复杂太乱,EmptyDriver又只生成空的项目。

于是DIY了一个SimpleDriver,具体做法如下:

在VS的安装目录下找到存放项目模板的文件,如我的是在:

D:\Program Files\Microsoft Visual Studio 8\VC\vcprojects\DDK Project

打开文件DDKWizard.vsdir,新增一句:

SimpleDriver.vsz| |Simple driver|1|Creates a Simple driver project using DDKBUILD and the specified DDK.| |6777| |SimpleDriver

保存。

创建一个图标文件:SimpleDriver.ico和一个SimpleDriver.vsz文件,并设置SimpleDriver.vsz内容为:

VSWIZARD 7.0
Wizard=VsWizard.VsWizardEngine.8.0
Param="WIZARD_NAME = SimpleDriver"
Param="ABSOLUTE_PATH = D:\Program Files\DDKWizard\Wizards\SimpleDriver"
Param="FALLBACK_LCID = 1033"

其中SimpleDriver是向导名字,D:\Program Files\DDKWizard\Wizards\SimpleDriver是存储模板的目录。

在D:\Program Files\DDKWizard\Wizards目录下,复制一份Driver目录文件并改名为SimpleDriver作为我们的模板文件。进入目录D:\Program Files\DDKWizard\Wizards\SimpleDriver\Templates\1033,

清除PROJECT_NAME.h文件的正文内容,只留下版权注释部分和下面一行的// $Id$;编辑PROJECT_NAME.c的内容为:

///////////////////////////////////////////////////////////////////////////////
///
/// Copyright (c) [!output PROJECT_YEAR] - [!output DDKWIZ_USERVARIABLE_COMPANY]
///
/// Original filename: [!output PROJECT_FILENAME]
/// Project          : [!output PROJECT_NAME]
/// Date of creation : [!output PROJECT_DATE]
/// Author(s)        : softsing
///
/// Purpose          : <description>
///
/// Revisions:
/// 0000 [[!output PROJECT_DATE]] Initial revision.
///
///////////////////////////////////////////////////////////////////////////////

#include <ntddk.h>
//#include "[!output PROJECT_NAME].h"

VOID DriverUnload(IN PDRIVER_OBJECT DriverObject)
{
        //Add your codes here...
}

NTSTATUS DriverEntry(IN OUT PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath)
{
        DriverObject->DriverUnload = DriverUnload;
        //Add your codes here...
        return STATUS_SUCCESS;
}

以便生成最简单项目文件。

由于是XP环境,因此每次创建项目都要重新选择XP DDK环境,未免显得多余。可以修改目录

D:\Program Files\DDKWizard\Wizards\SimpleDriver\HTML\1033下的default.htm文件,修改代码为:

<select size="4" id="DDK_CHOICE_LISTBOX" multiple="multiple" style="width:70%;">
          <option value="0">Windows 2000 DDK</option>
          <option value="1" selected="selected">Windows XP DDK</option>
          <option value="2">Windows 2003 DDK</option>
          <option value="3">Longhorn/Vista WDK</option>
</select>

保存后,那么以后新建项目默认选项就是“Windows XP DDK”了。当然自定义设置还很多,你可以根据自己的需要来定制。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 7
支持
分享
最新回复 (1)
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
坐下沙发, 谢谢分享
2010-3-30 15:07
0
游客
登录 | 注册 方可回帖
返回