原文地址 http://blogold.chinaunix.net/u/25096/showart_480854.html
| |
原文地址 http://blog.703804.com VS2005集成DDKWizard遇到的问题 ———————————————————————————— ▲建立EmptyDriver时, 要在sources文件的第4行TARGETTYPE=后面加DRIVER 加入[源文件]后还要在sources文件里的SOURCES=后面加上[源文件名]。比如: SOURCES=DriverDemo.cpp \ DriverDemo.h ▲Cannot open include file: \'NTDDK.h\': No such file or directory 解决方案:VS2005/工具/选项/VC++目录/, [显示以下内容的目录]为[包含文件],把DDK包含文件加进目录—— [D:\WINDDK\3790.1830\inc\ddk\wnet]和[D:\WINDDK\3790.1830\inc\wnet]。 [显示以下内容的目录]为[库文件],把DDK库文件加进目录—— [D:\WINDDK\3790.1830\LIB\WNET\I386] 以上DDK的路径要放到最先。 参考自:http://blog.csdn.net/jamesandy/archive/2008/03/17/2192267.aspx 结果: ▲编译提示错误: BufferOverflowK.lib(gs_support.obj) : error LNK2019: unresolved external symbol [email protected] referenced in function [email protected] objchk_w2K_x86\i386\Helloworld.sys : fatal error LNK1120: 1 unresolved externals 解决方案: 把[入口函数DriverEntry]前加上extern "C": extern "C"{ NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObj, PUNICODE_STRING pRegistryString) { } }//extern "C" 结果:OK。编译通过 直接用DDK的命令行工具编译>>>>>>>>>>>>>>>>>>>>>>>>> ———————————————————————————— 1,D:\WINDDK下建立工程目录:D:\WINDDK\uu 2,D:\WINDDK\uu下文件清单: DriverDemo.cpp makefile 代码: # # DO NOT EDIT THIS FILE!!! Edit .sources. if you want to add a new source # file to this component. This file merely indirects to the real make file # that is shared by all the driver components of the Windows NT DDK # !INCLUDE $(NTMAKEENV)makefile.def sources 代码: TARGETNAME=DriverDemo TARGETTYPE=DRIVER DRIVERTYPE=WDM TARGETPATH=OBJ INCLUDES=$(DDKROOT)incddkwnet; $(DDKROOT)incwnet; SOURCES=DriverDemo.cpp 打开:开始/程序/……/Windows Server 2003 Checked x86 Build Environment 输入如下: D:\WINDDK\3790~1.183>cd ..//uu D:\WINDDK\uu>build 原文件地址:http://blog.csdn.net/xiaou_is_me/archive/2008/05/13/2441117.aspx |