more CUV build environment for XP

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>

Philip Lukidis wrote:

Or am I missing something? Maybe the support in XP is not yet official?

First of all, it’s good to hear from people using CUV. This tool is
slowly starting to catch-on, and feedback like this is precisely what
Microsoft needs to hear. Positive, negative, or undecided, the more the
better.

Second of all, I’m sorry to hear trying to use CUV has been so obviously
frustrating for you.

And finally, to your issue: Because you have to edit makefile.def, add
the lib to the directory yourself, and edit ntddk.h and wdm.h… you’re
starting to think that maybe CUV *isn’t* officially supported in the XP
build environment? Imagine that :slight_smile:

CUV was first released in the Server 2003 DDK. As such, it supports the
S03 and later build environments. Drivers built with CUV in the S03 (and
later) build enviroments will work when run on XP and later systems.

That the documentation isn’t more clear about this is frankly the fault
of the developer, not the doc writer. The initial intention was to
support XP and later build environments in the S003 DDK. This turned out
to be not a good idea for a few reasons – absolutely none of those
reasons having anything to do with whether or not CUV would technically
work in a driver built in the XP build environment.

[Having said all that, now that you’ve gone to the trouble of “rolling
your own CUV support” in the XP build environment, I can’t think of any
reason that this won’t work or would lead to invalid results. While
obviously not officially supported by Microsoft, you should feel free to
report any problems/issues you encounter here.]

Soooooo, to sum up: CUV works in S03 and later BEs, and supports
execution of drivers built in those environments on XP and later.

I hope that clears things up, and once again, I’m sorry for the confusion,

Peter
OSR

BTW, CUV does support all three processor architectures for Server 2003:
x86, x64 and IA64.

Thanks for the feedback, Philip, we’ll work on improving the information
about supported environments.

Richard Moore
MS DDK Team

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of PeterGV
Sent: Friday, August 27, 2004 8:52 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] more CUV build environment for XP

Philip Lukidis wrote:

Or am I missing something? Maybe the support in XP is not yet
official?

First of all, it’s good to hear from people using CUV. This tool is
slowly starting to catch-on, and feedback like this is precisely what
Microsoft needs to hear. Positive, negative, or undecided, the more the

better.

Second of all, I’m sorry to hear trying to use CUV has been so obviously

frustrating for you.

And finally, to your issue: Because you have to edit makefile.def, add
the lib to the directory yourself, and edit ntddk.h and wdm.h… you’re

starting to think that maybe CUV *isn’t* officially supported in the XP
build environment? Imagine that :slight_smile:

CUV was first released in the Server 2003 DDK. As such, it supports the

S03 and later build environments. Drivers built with CUV in the S03 (and

later) build enviroments will work when run on XP and later systems.

That the documentation isn’t more clear about this is frankly the fault
of the developer, not the doc writer. The initial intention was to
support XP and later build environments in the S003 DDK. This turned out

to be not a good idea for a few reasons – absolutely none of those
reasons having anything to do with whether or not CUV would technically
work in a driver built in the XP build environment.

[Having said all that, now that you’ve gone to the trouble of “rolling
your own CUV support” in the XP build environment, I can’t think of any
reason that this won’t work or would lead to invalid results. While
obviously not officially supported by Microsoft, you should feel free to

report any problems/issues you encounter here.]

Soooooo, to sum up: CUV works in S03 and later BEs, and supports
execution of drivers built in those environments on XP and later.

I hope that clears things up, and once again, I’m sorry for the
confusion,

Peter
OSR


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

“PeterGV” wrote in message news:xxxxx@ntdev…
> Philip Lukidis wrote:
> >
> > Or am I missing something? Maybe the support in XP is not yet official?
> >
>
> First of all, it’s good to hear from people using CUV. This tool is
> slowly starting to catch-on, and feedback like this is precisely what
> Microsoft needs to hear. Positive, negative, or undecided, the more the
> better.
>
> Second of all, I’m sorry to hear trying to use CUV has been so obviously
> frustrating for you.
>
> And finally, to your issue: Because you have to edit makefile.def, add
> the lib to the directory yourself, and edit ntddk.h and wdm.h… you’re
> starting to think that maybe CUV isn’t officially supported in the XP
> build environment? Imagine that :slight_smile:
>
> CUV was first released in the Server 2003 DDK. As such, it supports the
> S03 and later build environments. Drivers built with CUV in the S03 (and
> later) build enviroments will work when run on XP and later systems.
>
> That the documentation isn’t more clear about this is frankly the fault
> of the developer, not the doc writer. The initial intention was to
> support XP and later build environments in the S003 DDK. This turned out
> to be not a good idea for a few reasons – absolutely none of those
> reasons having anything to do with whether or not CUV would technically
> work in a driver built in the XP build environment.
>
> [Having said all that, now that you’ve gone to the trouble of “rolling
> your own CUV support” in the XP build environment, I can’t think of any
> reason that this won’t work or would lead to invalid results. While
> obviously not officially supported by Microsoft, you should feel free to
> report any problems/issues you encounter here.]
>
> Soooooo, to sum up: CUV works in S03 and later BEs, and supports
> execution of drivers built in those environments on XP and later.
>
> I hope that clears things up, and once again, I’m sorry for the confusion,
>
> Peter
> OSR
>

Thanks for you reply Peter. Frustrating would definitely be an
overstatement, especially as CUV flagged me right away over an issue in my
driver (fixed). Thanks for clarifying some points on CUV compatibility.
Looks like I may have to download server 2003 SP1 from MSDN downloads, just
to be safe. Immediately, upon unload, I got flagged by verifier for memory
leaks stemming from DKExtPoolCreateEntry. I never had memory leaks before
in this driver. So just to be sure I’ll try again on a supported BE and OS.

thanks,

Philip Lukidis