VS2017 + WDK7600搭建Windows XP驱动编译环境
2022/4/4 7:19:34
本文主要是介绍VS2017 + WDK7600搭建Windows XP驱动编译环境,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
如果你开发的驱动需要支持Windows XP,就必须使用WDK7600;如果不需要,赶紧安装最新的VS2019+WDK2004吧。
由于WDK7600编译使用命令行,没有集成IDE,使得编码过程较为痛苦,既没有代码提示,又。。好吧,主要就是代码提示,这也是使用VS集成环境最根本的需求。
关于VS集成WDK7600,网上也有一堆的经验,大部分通过改工程编译属性的方式进行,照着做可能出现这样那样的意外,而设置编译成功了,又心里没底。所以,本文介绍另一种方法让WDK7600编译集成到VS中,应该适用于各种VS版本,本文以VS2017为例介绍。
废话不说,开始!
0、安装VS和WDK7600
默认安装就好了。
1、具体步骤
-
新建一个空的解决方案,如xpDrv1,此时解决方案(sln)应该包含一个默认的工程xpDrv1(proj)
-
在工程上,右键打开属性,平台x86,以Debug为例进行设置,Release的参数设置相同,可以一起设置
-
改“配置类型”为
生成文件
,点击“应用”,左边树形属性列表会相应改变; -
点VC++ 目录,将“包含目录”内容删除,粘贴:
C:\WinDDK\7600.16385.1\inc\crt;C:\WinDDK\7600.16385.1\inc\api;C:\WinDDK\7600.16385.1\inc\ddk
,代码提示起作用就是这一步!。注意,此处根据WDK7600目录的位置自己做调整。 -
点击“NMake”,如下图设置,为了方便复制:
- 预处理定义:在Debug配置中,填入“DBG”,这里是方便浏览源码用,在实际编译过程中并不起作用
- 生成,对应工程右键“生成”:
cmd.exe /c buildCmd.cmd $(Configuration) -build
- 重新生成,对应工程右键“重新生成”:
cmd.exe /c buildCmd.cmd $(Configuration) -rebuild
- 清理,对应工程右键“清理”:
cmd.exe /c buildCmd.cmd $(Configuration) -clean
-
在工程根目录新建文件
buildCmd.cmd
,内容如下(根据WDK安装目录可自行调整相关内容,下面是默认安装)
@echo off set BUILD_TYPE=%~1 shift set BUILD_ARG=%~1 if "%BUILD_TYPE%" == "Debug" ( set DDK_BUILD_TYPE=chk ) else ( set DDK_BUILD_TYPE=fre ) if "%BUILD_ARG%"=="-rebuild" (set BUILD_OPTS=/c /Z) if "%BUILD_ARG%" == "-clean" ( rd /s /q obj%DDK_BUILD_TYPE%_wxp_x86\ 2>NUL: del /s /q build%DDK_BUILD_TYPE%_wxp_x86.* 2>NUL: ) else ( echo %~dp0 pushd . call C:\WinDDK\7600.16385.1\bin\setenv.bat C:\WinDDK\7600.16385.1\ %DDK_BUILD_TYPE% x86 WXP no_oacr popd build %BUILD_OPTS% )
-
工程根目录添加
sources
和makefile
两个文件,可以从WDK7600 sample中随便拷贝两个过来 -
添加源文件,例如
xpDrv1.c
,写点代码试试,你会发现——代码提示有了~ -
对sources进行相应修改,工程上右键“生成”试试,你会发现——可以生成~
-
工程上右键“重新生成”试试,嗯
-
工程上右键“清理”试试,嗯嗯
这里,只介绍了x86平台的设置,因为Windows XP都是32位,64位的参照此也很容易设置
3、导出模板
-
点击菜单中“项目”,“导出模板”,弹出对话框,选默认“项目模板”,下一步,下图所示,完成就好了
-
新建项目,可以发现,有了xpDrv1的模板(下图,是我之前使用xpDrv工程导出的模板),选中创建。
-
你会发现,文件还是原来xpDrv1的文件,只需要把源文件
xpDrv1.c
替换一下,sources
改一下,就是新的工程了
这篇关于VS2017 + WDK7600搭建Windows XP驱动编译环境的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?