Now that the WDK kit has been completed I’ve been looking through it and
thought I’d note for the record that you should be very careful before
using samples from the latest kit. My reading of the EULA is that only
samples explicitly listed in the file samples.txt can be redistributed
in source form:
“Sample Code. You may modify, copy, and distribute the source and
object code form of code listed in the SAMPLES.TXT file. You may
modify, copy and distribute only the object code form of other sample
code that is not listed in the SAMPLES.TXT file.”
(Note that getting this license is itself a trick - the only time it
appears to be displayed is during installation. There is no EULA file
that I could find on the DVD or in the installation directory.)
Since there is no samples.txt file my conclusion is that NONE of the
examples in the WDK are redistributable in source code format (I care
about such things because I can rely upon the old IFS Kit license and
samples for class, but this means I can’t use source code samples from
the current WDK because it *might* violate the EULA, and I try very hard
not to step on some mighty big toes attached to feet that can crush on a
whim.)
Less clear to me was what object code you can redistribute. The line
prior to the “Sample Code” line says:
“REDIST.TXT Files. You may copy and distribute the object code form of
code listed in REDIST.TXT files.”
I did finally find that file - it is on the WDK distribution DVD but
isn’t installed with the full distribution kit (we need to save the 5k
of space it represents. Darn text files are so space wasting…) The
file doesn’t list any of the binaries built by the WDK itself. Thus,
one (conservative) interpretation is that the new license does not allow
distribution of any of the samples (or code derived from the samples) in
binary or source code form.
Truly a masterful part of the license is section four that prohibits
(amongst other things):
“You may not: … work around any technical limitations in the
software.”
Which I guess means you can’t fix any bugs that you find (since those
ARE technical limitations.) Of course the next line doesn’t allow you
to use the debugger with the code anyway (unless explicitly allowed by
applicable law.)
Of course, this is the danger with reading a EULA - they are written by
lawyers without any pragmatic experience in using the software to which
the license applies. That level of ambiguity provides a potential club
over everyone’s head (so they ignore it mostly and enforce it when you
piss them off. But that may just me being cynical as well.)
Fair warning: I am not a lawyer and this is not a legal opinion. For
your own safety and the safety of your company, I would suggest that you
work with your own lawyers to determine the real meaning and impact of
the Microsoft EULA for the WDK. I merely draw your attention to its
nuances and details so that later if you DO step on Microsoft’s toes,
you can’t claim ignorance.
Tony
Tony Mason
Consulting Partner
OSR Open Systems Resources, Inc.
http://www.osr.com