如何搭建Visual Studio的内核编程开发环境
一、下载与安装WDK
下载安装后,假设安装路径为逗c:\winddk地,接下来要设计环境变量,添加:BASEDIR,值为:逗c:\winddk\6001地。必须设置此环境变量,否则下面编译时会出问题。
二、VisualStudio的开发环境
笔者用的是VisualStudio2005,所以就以此版本介绍,其他版本的类似。
首先新建项目,类型选择VisualC++->General中的逗MakefilePRoject地,这里的项目保存路径不要包括空格、中文等字符,否则会造成后面编译时的出错。
image
下一步,在DebugConfigurATionSettings中设置如下:
Buildcommandline:ddk_buildchkwxp
Cleancommands:ddk_cleanchkwxp
Rebuildcommandline:ddk_buildchkwxp/a
Output:first.sys
image
下一步,在ReleaseConfigurationSettings中与Debug的一样,只是把逗chk地改为逗fre地即可,如下图:
image
接下来设置工程属性,在AllConfigurations中,ConfigurationProperties->NMake->IncludeSearchPath中添加路径:
C:\WinDDK\6000\inc\ddk;C:\WinDDK\6000\inc\api
接下来添加源代码文件,举个例子:
first.c
#include
VOIDDriverUnload(PDRIVER_OBJECTdriver)
DbgPrint("Driverunloading...\n");
NTSTATUSDriverEntry(PDRIVER_OBJECTdriver,PUNICODE_STRINGreg_path)
DbgPrint("EnteredDriverEntry!\n");
driver->DriverUnload=DriverUnload;
returnSTATUS_SUCCESS;
现在可以发现在VS中可以使用VS开发环境带来的强大功能,如查看PDRIVER_OBJECT的定义、查看某变量的成员函数(Ctrl+J)等等。
接下来要为编译作准备,添加以下这些文件:
makefile
Copyright(C)MicrosoftCorporation,1999-2002
ModuleName:
makefile.
Notes:
DONOTEDITTHISFILE!!!Edit.\sources.ifyouwanttoaddanewsource
filetothiscomponent.Thisfilemerelyindirectstotherealmakefile
thatissharedbyallthecomponentsofWindowsNT(DDK)
!ENDIF
!INCLUDE$(NTMAKEENV)\makefile.def
sources
TARGETNAME=first
TARGETTYPE=DRIVER
TARGETPATH=obj
SOURCES=first.c
ddk_build.bat
@echoon
@echo%1ischkorfre%2isWXPorW2KorWNET.
if"%4"=="/a"callddk_clean%1%2
pushd.
call%BASEDIR%\bin\setenv.bat%BASEDIR%%1%2
@echoon
build
ddk_clean.bat
ifexistDebugrd/s/qDebug
ifexistReleaserd/s/qRelease
ifexistobj%1_%2_x86rd/s/qobj%1_%2_x86
现在,按F7就可以编译连接了。
以上就是搭建VS的内核开发环境过程。
本回答由提问者推荐
IDE编程环境是什么?IDE是什么?
vcvb都是ide,他们集成了编辑,可视,调试,编译等功能在一个界面里面。实际上编译这样都是分开的程序,例如vc就要用clxxx.cc命令行。
在linux命令界面下怎么进入C编译环境?
不知道你说的编译环境是什么编辑+编译 还是 仅仅编译? 前者 一般使用vim 或者emacs+ gcc 仅仅编译 gcc就行了 gcc是纯命令行方式的, 具体的使用请参考