Hi. I'm using server 2k3 sp1 DDK, build 1218. I'm compiling for WinXP SP2,
and I thought CUV was supported on WinXP and onward; the DDK states:
"Drivers that are built with CUV can execute under Windows® XP and later
versions of Windows. CUV is not available in the Windows 2000 build
environments, and drivers built with CUV should not be run on Windows
2000.". So far so good, although nowhere is it explicitly said that CUV is
supported in WinXP environments (though it is implied). To get CUV working
in the WinXP compile environment, I have to do 3 things:
a) madefile.def does not let me use CUV: this snippet says it all:
Ensure CUV is supported in the Build Environment
DDK_BLD_MSG=
!IF DEFINED(_NT_TARGET_VERSION)
! IF $(_NT_TARGET_VERSION) < 0X502 # 0x502 is Windows Server
2003
! IF DEFINED(VERIFIER_DDK_EXTENSIONS)
DDK_BLD_MSG=BUILDMSG: Warning : CUV is not supported in this build
environment
! ENDIF
! ENDIF
!ENDIF
For now, I have simply changed the makefile.def condition to 0x501 from
0x502.
b) In addition to the makefile issue, ddk_ext.lib is only in the 2k3 lib
directory. For now, I copied ddk_ext.lib to the XP lib directory, but I
don't feel comfortable doing this, as the library was compiled for the 2k3
environment.
c) Finally, wdm.h and ntddk.h for 2k3 include ddk_ext.h, but (you guessed
it) not for the XP environments. So now I have to scribble in wdm.h and
ntddk.h for WinXP...not something I want to do. I added this to each
include file tail:
#ifdef VERIFIER_DDK_EXTENSIONS
#include <ddk_ext.h>
#endif
Or am I missing something? Maybe the support in XP is not yet official?
thanks,
Philip Lukidis</ddk_ext.h>