Hi--
My employer has a DDK license. I'm not sure of the exact licensing
details (e.g. which flavor if there are indeed flavors).
We would like to include some code from the DDK in a utility we are
developing. The project in the DDK is called DevCon. So: We'd like to
include/use some source from DevCon for an installer we are writing.
We don't want to actually use the DevCon utility executable. We just
want to use some of the source code from the utility which will be
compiled into a new utility that does other things beyond what DevCon
does at the moment. But it is a commercial project and could be going on
potentially tens of thousands of CDs.
Can someone categorically say 'Yes, you can use code from the DevCon
project for your own utility. Don't be stupid, that's what its there for.'
Or can someone say 'No, you can't use code from DevCon in your own
project because its not redistributable, can't you read?.'
Or can someone point me in the direction of a more developer-friendly
FAQ or some other resource that won't require a lawyer to understand
(the EULA below is just plain confusing)?
Or, if its a gray area, can someone tell me which department at
Microsoft to contact?
In the EULA it says:
"You may also reproduce and distribute the Sample Code in object code
form along with any modifications you make to the Sample Code, provided
you comply with the Distribution Requirements described below."
There is no section in the EULA titled 'Distribution Requirements', but
there is a section called 'Redistribution Requirements'. In the
redistribution requirements it says (amongst other things not applicable
to a utility):
"Contact Microsoft for the applicable royalties due and other licensing
terms for all other uses and/or distribution of the Sample Code."
Further, there is text on the page describing DevCon
(http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q311272) which
says:
"DevCon is not redistributable. It is provided for use as a debugging
and development tool. You can freely modify DevCon for *private* (my
emphasis) use. The sample demonstrates how to use the SetupAPI and
CfgMgr32 functions together effectively to enumerate devices and perform
device operations."
I'm not a a lawyer. And the EULA that comes with the DDK seems to be
confusing if not inconsistent when viewed in light of other text that
governs individual utilities included on the DDK.
The EULA is below. Apolgies about the length.
thanks in advance
Alan
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
END-USER LICENSE AGREEMENT FOR THE MICROSOFT WINDOWS DRIVER DEVELOPMENT KIT
IMPORTANT-READ CAREFULLY: This Microsoft End-User License Agreement
("EULA") is a legal agreement between you (either an individual or a
single entity) and Microsoft Corporation for the Microsoft software
product identified above, which includes computer software and may
include associated media, printed materials, additional computer
software applications, and "online" or electronic documentation
("SOFTWARE PRODUCT"). By downloading, installing, copying, or otherwise
using the SOFTWARE PRODUCT, you agree to be bound by the terms of this
EULA. If you do not agree to the terms of this EULA, do not install or
use the SOFTWARE PRODUCT; you may however, return it to your place of
purchase for a full refund.
SOFTWARE PRODUCT LICENSE
The SOFTWARE PRODUCT is protected by copyright laws and international
copyright treaties, as well as other intellectual property laws and
treaties. The SOFTWARE PRODUCT is licensed, not sold.
1. GRANT OF LICENSE. This EULA grants you the following rights:
a. SOFTWARE PRODUCT. You may install and use five (5) copies of the
SOFTWARE PRODUCT on computers, including workstations, terminals or
other digital electronic devices ("COMPUTERS") to design, develop and
test drivers ("Drivers") for use with Microsoft Windows Me, Microsoft
Windows 2000 Professional, Microsoft Windows 2000 Server, Microsoft
Windows 2000 Advanced Server, Microsoft Windows 2000 Datacenter Server,
Microsoft Windows XP, and Microsoft Windows XP Service Pack 1 operating
system products and any Microsoft operating system product that is a
successor to any of the foregoing (each an "OS Product").
b. Sample Code. You may modify the sample source code ("Sample Code")
to design, develop and test your Drivers for an applicable OS Product.
You may also reproduce and distribute the Sample Code in object code
form along with any modifications you make to the Sample Code, provided
you comply with the Distribution Requirements described below. For
purposes of this section, "modifications" shall mean enhancements to the
functionality of the Sample Code.
c. Redistribution Requirements. You may reproduce and distribute an
unlimited number of copies of the Sample Code as described above in
object code form, provided that: (i) you distribute the Sample Code only
in conjunction with and as a part of your Drivers for the applicable OS
Product; (ii) the Sample Code only operates in conjunction with an
applicable OS Product identified in Section 1(a) above; (iii) you do not
use Microsoft's name, logo, or trademarks to advertise, market or
promote your Drivers for the applicable OS Product without the express
written permission of Microsoft; (iv) you include a valid copyright
notice on your Drivers for the applicable OS Product; (v) you agree to
indemnify, hold harmless, and defend Microsoft from and against any
claims or lawsuits, including attorney's fees, that arise or result from
the use or distribution of your Drivers. Contact Microsoft for the
applicable royalties due and other licensing terms for all other uses
and/or distribution of the Sample Code.
2. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS.
a. Limitations on Reverse Engineering, Decompilation, and Disassembly.
You may not reverse engineer, decompile, or disassemble the SOFTWARE
PRODUCT, except and only to the extent that such activity is expressly
permitted by applicable law notwithstanding this limitation.
b. Rental. You may not rent, lease, or lend the SOFTWARE PRODUCT.
c. Support Services. Microsoft may provide you with support services
related to the SOFTWARE PRODUCT ("Support Services"). Use of Support
Services is governed by the Microsoft policies and programs described in
the user manual, in "online" documentation, and/or in other
Microsoft-provided materials. Any supplemental software code provided
to you as part of the Support Services shall be considered part of the
SOFTWARE PRODUCT and subject to the terms and conditions of this EULA.
With respect to technical information you provide to Microsoft as part
of the Support Services, Microsoft may use such information for its
business purposes, including for product support and development.
Microsoft will not utilize such technical information in a form that
personally identifies you.
d. Software Transfer. You may permanently transfer of all of your
rights under this EULA, provided you retain no copies, you transfer all
of the SOFTWARE PRODUCT (including all component parts, the media and
printed materials, any upgrades, this EULA, and, if applicable, the
Certificate of Authenticity), and the recipient agrees to the terms of
this EULA. If the SOFTWARE PRODUCT is an upgrade, any transfer must
include all prior versions of the SOFTWARE PRODUCT.
e. Termination. Without prejudice to any other rights, Microsoft may
terminate this EULA if you fail to comply with the terms and conditions
of this EULA. In such event, you must destroy all copies of the
SOFTWARE PRODUCT and all of its component parts.
f. Publicly Available Software. Your license rights to the Sample Code
are conditioned upon you (a) not incorporating Identified Software into,
or combining Identified Software with, the Sample Code or a derivative
work thereof; (b) not distributing Identified Software in conjunction
with the Sample Code or a derivative work thereof; and (c) not using
Identified Software in the development of a derivative work of the
Sample Code. "Identified Software" means software which is licensed
pursuant to terms that (i) create, or purport to create, obligations for
Microsoft with respect to the Sample Code or derivative work thereof or
(ii) grant, or purport to grant, to any third party any rights or
immunities under Microsoft's intellectual property or proprietary rights
in the Sample Code or derivative work thereof. Identified Software
includes, without limitation, "Publicly Available Software". "Publicly
Available Software" means any software that requires as a condition of
use, modification and/or distribution of such software that such
software or other software incorporated into, derived from or
distributed with such software be (a) disclosed or distributed in source
code form; (b) be licensed for the purpose of making derivative works;
or (c) be redistributable at no charge.
3. INTELLECTUAL PROPERTY RIGHTS. All title and intellectual property
rights in and to the SOFTWARE PRODUCT (including but not limited to any
images, photographs, animations, video, audio, music, text and "applets"
incorporated into the SOFTWARE PRODUCT), and any copies you are
permitted to make herein are owned by Microsoft or its suppliers. All
title and intellectual property rights in and to the content which may
be accessed through use of the SOFTWARE PRODUCT is the property of the
respective content owner and may be protected by applicable copyright or
other intellectual property laws and treaties. This EULA grants you no
rights to use such content. If this SOFTWARE PRODUCT contains
documentation which is provided only in electronic form, you may print
one copy of such electronic documentation. You may not copy the printed
materials accompanying the SOFTWARE PRODUCT.
4. U.S. GOVERNMENT RESTRICTED RIGHTS. The SOFTWARE PRODUCT provided to
the U.S. Government pursuant to solicitations issued on or after
December 1, 1995 is provided with the commercial rights and restrictions
described elsewhere herein. The SOFTWARE PRODUCT provided to the U.S.
Government pursuant to solicitations issued prior to December 1, 1995 is
provided with RESTRICTED RIGHTS as provided for in FAR, 48 CFR 52.227-14
(JUNE 1987) or FAR, 48 CFR 252.227-7013 (OCT 1988), as applicable.
5. EXPORT RESTRICTIONS. You acknowledge that the SOFTWARE PRODUCT is of
U.S. origin. You agree to comply with all applicable international and
national laws that apply to the SOFTWARE PRODUCT, including the U.S.
Export Administration Regulations, as well as end-user, end-use and
destination restrictions issued by U.S. and other governments. For
additional information, see <http://www.microsoft.com/exporting/>.
6. DISCLAIMER OF WARRANTIES. To the maximum extent permitted by
applicable law, Microsoft and its suppliers provide to you the SOFTWARE
PRODUCT and Support Services AS IS AND WITH ALL FAULTS; and Microsoft
and its suppliers hereby disclaim with respect to the SOFTWARE PRODUCT
and Support Services all warranties and conditions, whether express,
implied or statutory, including, but not limited to, any (if any)
warranties, duties or conditions of or related to: merchantability,
fitness for a particular purpose, lack of viruses, accuracy or
completeness of responses, results, workmanlike effort and lack of
negligence. ALSO THERE IS NO WARRANTY, DUTY OR CONDITION OF TITLE,
QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO DESCRIPTION OR
NON-INFRINGEMENT. THE ENTIRE RISK ARISING OUT OF USE OR PERFORMANCE OF
THE SOFTWARE PRODUCT AND ANY SUPPORT SERVICES REMAINS WITH YOU.
7. EXCLUSION OF INCIDENTAL, CONSEQUENTIAL AND CERTAIN OTHER DAMAGES. TO
THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL
MICROSOFT OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, BUT
NOT LIMITED TO, DAMAGES FOR: LOSS OF PROFITS, LOSS OF CONFIDENTIAL OR
OTHER INFORMATION, BUSINESS INTERRUPTION, PERSONAL INJURY, LOSS OF
PRIVACY, FAILURE TO MEET ANY DUTY (INCLUDING OF GOOD FAITH OR OF
REASONABLE CARE), NEGLIGENCE, AND ANY OTHER PECUNIARY OR OTHER LOSS
WHATSOEVER) ARISING OUT OF OR IN ANY WAY RELATED TO THE USE OF OR
INABILITY TO USE THE SOFTWARE PRODUCT OR THE SUPPORT SERVICES, OR THE
PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES, OR OTHERWISE UNDER
OR IN CONNECTION WITH ANY PROVISION OF THIS EULA, EVEN IF MICROSOFT OR
ANY SUPPLIER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
8. LIMITATION OF LIABILITY AND REMEDIES. Notwithstanding any damages
that you might incur for any reason whatsoever (including, without
limitation, all damages referenced above and all direct or general
damages), the entire liability of Microsoft and any of its suppliers
under any provision of this EULA and your exclusive remedy for all of
the foregoing shall be limited to the greater of the amount actually
paid by you for the SOFTWARE PRODUCT or U.S. $5.00. The foregoing
limitations, exclusions and disclaimers shall apply to the maximum
extent permitted by applicable law, even if any remedy fails its
essential purpose.
9. APPLICABLE LAW. This EULA shall be construed and controlled by the
laws of the State of Washington, and you consent to the jurisdiction and
venue in the federal courts sitting in King County, Washington, unless
no federal subject matter jurisdiction exists, in which case you consent
to the jurisdiction and venue in the Superior Court of King County,
Washington. You waive all defenses of lack of personal jurisdiction and
forum non conveniens. Process may be served on either party in the
manner authorized by applicable law or court rule. If either Microsoft
or you employ attorneys to enforce any rights arising out of or relating
to this EULA, the prevailing party shall be entitled to recover
reasonable attorneys' fees.
10. ENTIRE AGREEMENT. This EULA (including any addendum or amendment to
this EULA which is included with the SOFTWARE PRODUCT) is the entire
agreement between you and Microsoft relating to the SOFTWARE PRODUCT and
the Support Services (if any) and it supersedes all prior or
contemporaneous oral or written communications, proposals and
representations with respect to the SOFTWARE PRODUCT or any other
subject matter covered by this EULA. To the extent the terms of any
Microsoft policies or programs for Support Services conflict with the
terms of this EULA, the terms of this EULA shall control.
11. QUESTIONS? Should you have any questions concerning this EULA, or
if you desire to contact Microsoft for any reason, please contact the
Microsoft subsidiary serving your country, or write: Microsoft DDK
Development/One Microsoft Way/Redmond, WA 98052-6399.