You are on page 1of 28

3RD PARTY SOFTWARE contained in McAfee Total Protection Service 5.

2 7/28/10

Library/Module Name Total Protection Service core components Listen.h, Reqsock.h, Fci.h, Fdi.h, Comip.h, comutil.h, Exchext.h, statreg.h, Vxdcrt.h, Request.h Misc Libraries from Boost v1.38.0

Source or Object code

Code Provider

License Type (gnu, gpl, apache, other)

License Text: (Paste in URL or Text)

License Expiration

Description of Library

Legal Approval (Y/N)

Source code header

Microsoft

Platform SDK & MFC Source code

Microsoft Win32 SDK License Text

Never

Installed Binaries

Boost

Never

CRT Libraries, WTL 7.5

Installed Binaries

Microsoft

Never

ATL from VisualStudio 2005

Installed Binaries

Microsoft

Microsoft redistributable

Never

Virus

SQLLite Library
2001 September 15 The author disclaims copyright to this source code. In place of a legal notice, here is a blessing: May you do good and not evil. May you find forgiveness for yourself and forgive others. May you share freely, never taking more than you give. * This header file defines the interface that the SQLite library presents to client programs. If a C-function, structure, datatype, or constant definition does not appear in this file, then it is not a published API of SQLite, is subject to change without notice, and should not be referenced by programs that use SQLite. Some of the definitions that are in this file are marked as "experimental". Experimental interfaces are normally new features recently added to SQLite. We do not anticipate changes to experimental interfaces but reserve to make minor changes if experience from use "in the wild" suggest such changes are prudent. The official C-language API documentation for SQLite is derived from comments in this file. This file is the authoritative source on how SQLite interfaces are suppose to operate. The name of this file under configuration management is "sqlite.h.in". The makefile makes some minor changes to this file (such as inserting the version number) and changes its name to "sqlite3.h" as part of the build process. @(#) $Id: sqlite.h.in,v 1.421 2008/12/30 06:24:58 danielk1977 Exp $

RSA Security
$Id: md5_dgst.c,v 1.49 2005/01/08 23:07:19 fjeffery Exp $ Copyright (C) 1998-2003 RSA Security Inc. All rights reserved. This work contains proprietary information of RSA Security. Distribution is limited to authorized licensees of RSA Security. Any unauthorized reproduction, distribution or modification of this work is strictly prohibited.

CabSDK License Text Redistributable Code. Portions of the SOFTWARE PRODUCT in the "BIN" and "LIB" directories are designated as "Redistributable Code." You may reproduce and distribute the Redistributable Code provided you comply with the Distribution Requirements described below. Distribution Requirements. You may copy and redistribute the Sample Code and/or Redistributable Code (collectively "REDISTRIBUTABLE COMPONENTS") as described above, provided that (a) you distribute the REDISTRIBUTABLE COMPONENTS only in conjunction with, and as a part of, your Application; (b) your Application adds significant and primary functionality to the REDISTRIBUTABLE COMPONENTS; (c) the Application does not allow the use of the REDISTRIBUTABLE COMPONENTS for files which are not compatible with the Microsoft CAB files; (d) the executable code in the BIN directory may be redistributed unmodified in conjunction with your Application provided that your Application adds significant and primary functionality to the REDISTRIBUTABLE COMPONENTS; (e) the library code in the LIB directory may only be redistributed when linked into your Application; (f) you do not use Microsoft's name, logo, or trademarks to market your Application; (g) you include a valid copyright notice on your Application; and (h) you agree to indemnify, hold harmless, and defend Microsoft from and against any claims or lawsuits, including attorneys' fees, that arise or result from the use or distribution of your Application. Contact Microsoft for the applicable royalties due and other licensing terms for all other uses and/or distribution of the REDISTRIBUTABLE COMPONENTS. Microsoft reserves all rights not expressly granted to you.

MICROSOFT XML CORE SERVICES (MSXML) 4.0


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 identified above, which may include computer software, associated media, printed materials, and online or electronic documentation (SOFTWARE). By downloading, installing, copying, or otherwise using the SOFTWARE, 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. The SOFTWARE is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. Microsoft or its suppliers own the title, copyright and other intellectual property rights in the SOFTWARE. The SOFTWARE is licensed, not sold. The SOFTWARE consists of two elements: (1) XML Core Services component (COMPONENT) which contains, among other items, files with .dll extensions which expose application programming interfaces that provide implementation to read, write, transform and make other manipulations with XML; and (2) MSXML software development kit (SDK) which may include documentation, sample code, and other information designed to assist in the development of your applications. 1. GRANT OF LICENSE. This EULA grants you the following rights: a. General. You may install and use any number of copies of the SOFTWARE on any number of computers, including workstations, terminals or other digital electronic devices, for the purpose of designing, developing and testing your application(s) which work in conjunction with XML (Application(s)). b. Sample Code. You may modify the portions of the SDK designated as Sample Code for the purpose of designing, developing and testing your Application. c. Redistribution of SOFTWARE and/or COMPONENT. You may copy and redistribute the SOFTWARE (in its entirety) and/or the COMPONENT (in its entirety) either in conjunction with your Application or standalone in and of itself, subject to the following restrictions and limitations: (i) If you redistribute the SOFTWARE and/or COMPONENT in their entirety, your copy must be a true and complete copy of the SOFTWARE and/or COMPONENT, including Microsofts set up and all copyright notices, logos, end user license agreement and/or trademarks that appear in the SOFTWARE and/or COMPONENT as received from Microsoft; (ii) If you redistribute the SOFTWARE and/or COMPONENT in conjunction with your Application, your Application must include a valid copyright notice in your own name, which notice shall be sufficient to protect Microsofts copyright in the SOFTWARE and/or COMPONENT; (iii) If you redistribute the SOFTWARE and/or COMPONENT in conjunction with your Application, and if your Application does not display Microsofts end user license agreement to your end user, then your Application must be accompanied by license terms that are at least as restrictive as, and as protective of Microsoft as, those contained in this EULA.; (iv) You shall not use Microsofts name, logo or trademarks to market your Application; (v) You shall not modify or alter the SOFTWARE and/or COMPONENT in any way; provided that you may merge those files in the SOFTWARE and/or COMPONENT with msm extensions into the msm files of your Application; (vi) You shall not redistribute individual parts or files of the COMPONENT; you must redistribute the COMPONENT in its entirety; (vii) You shall not redistribute the SDK separately; the SDK may only be redistributed as part of the SOFTWARE in its entirety; and (viii) You agree to indemnify, hold harmless and defend Microsoft from and against any claims or lawsuits, including reasonable attorneys fees, which arise or result from your distribution of the SOFTWARE and/or COMPONENT and/or your Application. d. Redistribution of Sample Code as Modified by You. You may copy and redistribute any Sample Code that you have modified as described in Section 1(b) above and incorporated into your Application, in both source code form and object code form, subject to the following restrictions and limitations: (i) You shall distribute the modified Sample Code only in conjunction with and as part of an Application that adds significant and primary functionality to the Sample Code; (ii) You shall not use Microsofts name, logo or trademarks to market your Application;

(iii)

e.

f. g. 2. 3. 4.

You shall to include a valid copyright notice in your own name in your Application, which notice shall be sufficient to protect Microsofts copyright in the modified Sample Code; and (iv) You agree to indemnify, hold harmless and defend Microsoft from and against any claims or lawsuits including reasonable attorneys fees, which arise or result from the use or distribution of the modified Sample Code and/or your Application. Identified Software. Your license rights to the SOFTWARE are conditioned upon your (a) not incorporating Identified Software into, or combining Identified Software with, the SOFTWARE, or a derivative work thereof; (b) not distributing Identified Software in conjunction with the SOFTWARE; and (c) not using Identified Software in the development of a derivative work of the SOFTWARE. Identified Software means software which is licensed pursuant to terms that directly or indirectly (i) create, or purport to create, obligations for Microsoft with respect to the SOFTWARE or derivative work thereof or (ii) grant, or purport to grant, to any third party any rights or immunities under Microsofts intellectual property or proprietary rights in the SOFTWARE or derivative work thereof. Identified Software includes, without limitation, any software that requires as a condition of use, modification and/or distribution of such software that 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. Benchmark Testing. You may not disclose the results of any benchmark test using the SOFTWARE to any third party without Microsofts prior written approval. Reservation of Rights. Microsoft reserves all rights not expressly granted herein.

5. 6.

7.

8.

9.

LIMITATIONS ON REVERSE ENGINEERING, DECOMPILATION, AND DISASSEMBLY. You may not reverse engineer, decompile, or disassemble the SOFTWARE, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation. NO RENTAL. You may not rent, lease, or lend the SOFTWARE. SUPPORT SERVICES. In the event Microsoft does provide you with support services related to the SOFTWARE (Support Services), use of such 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 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. 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 and all of its component parts. INTELLECTUAL PROPERTY RIGHTS. All title and intellectual property rights in and to the SOFTWARE (including but not limited to any images, photographs, animations, video, audio, music, text and applets incorporated into the SOFTWARE), 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 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. U.S. GOVERNMENT LICENSE RIGHTS. SOFTWARE provided to the U.S. Government pursuant to solicitations issued on or after December 1, 1995 is provided with the commercial license rights and restrictions described elsewhere herein. SOFTWARE 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 DFAR, 48 CFR 252.227-7013 (OCT 1988), as applicable. EXPORT RESTRICTIONS. You agree that the SOFTWARE is subject to U.S. export jurisdiction. You agree to comply with all applicable international and national laws that apply to the SOFTWARE including the U.S. Export Administration Regulations, as well as end-user, end use and destination restrictions issued by the U.S. and other governments. For additional information see http://www.microsoft.com/exporting/. DISCLAIMER OF WARRANTIES. To the maximum extent permitted by applicable law, Microsoft and its suppliers provide the SOFTWARE and any (if any) Support Services AS IS AND WITH ALL FAULTS, and hereby disclaim all warranties and conditions, either express, implied or statutory, including, but not limited to, any (if any) implied warranties or conditions of merchantability, of fitness for a particular purpose, of lack of viruses, of accuracy or completeness of responses, of results, and of lack of negligence or lack of workmanlike effort, all with regard to the SOFTWARE, and the provision of or failure to provide Support Services. ALSO, THERE IS NO WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO DESCRIPTION OR NON-INFRINGEMENT,

WITH REGARD TO THE SOFTWARE. THE ENTIRE RISK AS TO THE QUALITY OF OR ARISING OUT OF USE OR PERFORMANCE OF THE SOFTWARE AND SUPPORT SERVICES, IF ANY, REMAINS WITH YOU. 10. 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 OR CONFIDENTIAL OR OTHER INFORMATION, FOR BUSINESS INTERRUPTION, FOR PERSONAL INJURY, FOR LOSS OF PRIVACY, FOR FAILURE TO MEET ANY DUTY INCLUDING OF GOOD FAITH OR OF REASONABLE CARE, FOR NEGLIGENCE, AND FOR 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, THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES, OR OTHERWISE UNDER OR IN CONNECTION WITH ANY PROVISION OF THIS EULA, EVEN IN THE EVENT OF THE FAULT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, BREACH OF CONTRACT OR BREACH OF WARRANTY OF MICROSOFT OR ANY SUPPLIER, AND EVEN IF MICROSOFT OR ANY SUPPLIER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 11. 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 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. 12. APPLICABLE LAW. If you acquired this SOFTWARE in the United States, this EULA is governed by the laws of the State of Washington. If you acquired this SOFTWARE in Canada, unless expressly prohibited by local law, this EULA is governed by the laws in force in the Province of Ontario, Canada; and, in respect of any dispute which may arise hereunder, you consent to the jurisdiction of the federal and provincial courts sitting in Toronto, Ontario. If this SOFTWARE was acquired outside the United States, then local law may apply. 13. ENTIRE AGREEMENT. This EULA (including any addendum or amendment to this EULA which is included with the SOFTWARE) is the entire agreement between you and Microsoft relating to the SOFTWARE 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 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. 14. 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 Sales Information Center/One Microsoft Way/Redmond, WA 98052-6399. Si vous avez acquis votre produit Microsoft au CANADA, la garantie limite suivante vous concerne :
RENONCIATION AUX GARANTIES. Dans toute la mesure permise par la lgislation en vigueur, Microsoft et ses fournisseurs fournissent le PRODUIT LOGICIEL et tous (selon

le cas) Services dassistance TELS QUELS ET AVEC TOUS LEURS DFAUTS, et par les prsentes excluent toute garantie ou condition, expresse ou implicite, lgale ou conventionnelle, crite ou verbale, y compris, mais sans limitation, toute (selon le cas) garantie ou condition implicite ou lgale de qualit marchande, de conformit un usage particulier, dabsence de virus, dexactitude et dintgralit des rponses, de rsultats, defforts techniques et professionnels et dabsence de ngligence, le tout relativement au PRODUIT LOGICIEL et la prestation ou la non-prestation des Services dassistance. DE PLUS, IL NY A AUCUNE GARANTIE ET CONDITION DE TITRE, DE JOUISSANCE PAISIBLE, DE POSSESSION PAISIBLE, DE SIMILARIT LA DESCRIPTION ET DABSENCE DE CONTREFAON RELATIVEMENT AU PRODUIT LOGICIEL. Vous supportez tous les risques dcoulant de lutilisation et de la performance du PRODUIT LOGICIEL et ceux dcoulant des Services dassistance (sil y a lieu).
EXCLUSION DES DOMMAGES INDIRECTS, ACCESSOIRES ET AUTRES. Dans toute la mesure permise par la lgislation en vigueur, Microsoft et ses fournisseurs ne sont en

aucun cas responsables de tout dommage spcial, indirect, accessoire, moral ou exemplaire quel quil soit (y compris, mais sans limitation, les dommages entrans par la perte de bnfices ou la perte dinformation confidentielle ou autre, linterruption des affaires, les prjudices corporels, la perte de confidentialit, le dfaut de remplir toute obligation y compris les obligations de bonne foi et de diligence raisonnable, la ngligence et toute autre perte pcuniaire ou autre perte de quelque nature que ce soit) dcoulant de, ou de toute

autre manire li , lutilisation ou limpossibilit dutiliser le PRODUIT LOGICIEL, la prestation ou la non-prestation des Services dassistance ou autrement en vertu de ou relativement toute disposition de cette convention, que ce soit en cas de faute, de dlit (y compris la ngligence), de responsabilit stricte, de manquement un contrat ou de manquement une garantie de Microsoft ou de lun de ses fournisseurs, et ce, mme si Microsoft ou lun de ses fournisseurs a t avis de la possibilit de tels dommages.
LIMITATION DE RESPONSABILIT ET RECOURS. Malgr tout dommage que vous pourriez encourir pour quelque raison que ce soit (y compris, mais sans limitation, tous les

dommages mentionns ci-dessus et tous les dommages directs et gnraux), la seule responsabilit de Microsoft et de ses fournisseurs en vertu de toute disposition de cette convention et votre unique recours en regard de tout ce qui prcde sont limits au plus lev des montants suivants: soit (a) le montant que vous avez pay pour le PRODUIT LOGICIEL, soit (b) un montant quivalant cinq dollars U.S. (5,00 $ U.S.). Les limitations, exclusions et renonciations ci-dessus sappliquent dans toute la mesure permise par la lgislation en vigueur, et ce mme si leur application a pour effet de priver un recours de son essence.
LGISLATION APPLICABLE.. Sauf lorsquexpressment prohib par la lgislation locale, la prsente convention est rgie par les lois en vigueur dans la province dOntario, Canada. Pour tout diffrend qui pourrait dcouler des prsentes, vous acceptez la comptence des tribunaux fdraux et provinciaux sigeant Toronto, Ontario.

Si vous avez des questions concernant cette convention ou si vous dsirez communiquer avec Microsoft pour quelque raison que ce soit, veuillez contacter la succursale Microsoft desservant votre pays, ou crire : Microsoft Sales Information Center, One Microsoft Way, Redmond, Washington 98052-6399.

Microsoft Win32 SDK EULA Text

END-USER LICENSE AGREEMENT FOR MICROSOFT SOFTWARE

MICROSOFT PLATFORM SOFTWARE DEVELOPMENT KIT


IMPORTANTREAD CAREFULLY: This 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 that accompanies this EULA, which includes computer software and may include associated media, printed materials, online or electronic documentation, and Internet-based services (Software). An amendment or addendum to this EULA may accompany the Software. YOU AGREE TO BE BOUND BY THE TERMS OF THIS EULA BY INSTALLING, COPYING, OR OTHERWISE USING THE SOFTWARE. IF YOU DO NOT AGREE, DO NOT INSTALL, COPY, OR USE THE SOFTWARE; YOU MAY RETURN IT TO YOUR PLACE OF PURCHASE FOR A FULL REFUND, IF APPLICABLE. 1. GRANT OF LICENSE. Microsoft grants you the rights described in this EULA provided that you comply with all terms and conditions of this EULA.

1.1 General License Grant. Microsoft grants you a limited, nonexclusive license to use the Software, and to make and use copies of the Software, for the purposes of designing, developing and testing your software applications for use with any version or edition of a Microsoft Windows operating system for personal computers or servers (Microsoft Operating System Product). 1.2 Sharepoint Portal Server SDK. The Software contains the SharePoint Portal Server Software Development Kit (SPSSDK). In addition to the license granted in Section 1.1, Microsoft grants you a limited, nonexclusive license to modify the sample source code located in the SPSSDK solely to design, develop, and test your application internally within your organization. Your entire license under this EULA with respect to the SPSSDK is conditioned on your not using the SPSSDK to create software that is incompatible with file formats indexed by Microsoft SharePoint Portal Server 2001. 2. ADDITIONAL LICENSE RIGHTSREDISTRIBUTABLE COMPONENTS 2.1 Source Code. Source Code means source code that is located in any directory or subdirectory named samples in the Software or that is otherwise identified as sample code in the Software, other than source code included in the SPSSDK, or is identified as Microsoft Foundation Class Libraries (MFC), Template Libraries (ATL), and C runtimes (CRTs). Microsoft grants you a limited, nonexclusive license (a) to use and modify any Source Code to design, develop, and test your software applications; and (b) to make and distribute copies of the Source Code and your modifications, subject to your compliance with Section 3. 2.2 Redistributable Code. All portions of the Software that are listed in the text file \License\Redist.txt collectively constitute Redistributable Code. Microsoft grants you a limited, nonexclusive license to reproduce and distribute Redistributable Code in object code form only, subject to your compliance with Section 3. 3. DISTRIBUTION REQUIREMENTS AND LICENSE LIMITATIONS 3.1 Your licenses under Section 2 to distribute Source Code, any modifications you make to the Source Code under Section 2.1, and Redistributable Code (collectively, Redistributables) are conditioned on the following: (a) you will distribute Redistributables only in object code form and in conjunction with and as a part of a software application developed by you that adds significant and primary functionality to the Redistributables (Application); (b) the Redistributables will operate only in conjunction with a Microsoft Operating System Product; (c) your Application will invoke the Software only via interfaces

described in the documentation accompanying the Software; (d) you will distribute your Application containing the Redistributables only pursuant to an end-user license agreement (which may be break-theseal, click-wrap or signed) with terms no less protective than those contained in this EULA; (e) you will not use Microsofts name, logo, or trademarks to market your Application; (f) you will include a valid copyright notice on your Application sufficient to protect Microsofts copyright in the Software; (g) you will not remove or obscure any copyright, trademark or patent notices that appear on or in the Software as delivered to you; (h) you will indemnify, hold harmless, and defend Microsoft from and against any claims or lawsuits, including attorneys and experts fees, that arise or result from the use or distribution of your Application; and (i) you will otherwise comply with the terms of this EULA. You may not permit further distribution of Redistributables by your end users except that you may permit further redistribution of Redistributables by your distributors to end users if your distributors only distribute the Redistributables in conjunction with and as part of your Application or Applications, you comply with all other terms of this EULA, and your distributors comply with all restrictions of this EULA that are applicable to you. 3.2 Renaming MFC, ATL or CRTs. You must rename all files containing MFC, ATL or CRTs prior to distributing them or any modifications to them. 3.3 Linking .lib Files. For any Redistributable Code having a filename extension of .lib, you may distribute only the results of running such Redistributable Code through a linker with your application. 3.4 Notice for Windows Media Technologies. In each Application in which you include any Redistributables from the Windows Media Player SDK, Windows Media Services SDK, Windows Media Encoder SDK, or Windows Media Software Development Kit (including but not limited to, the Windows Media Format SDK) portions of the Software, you must include in your Applications Help-About box (or if there is no such box, then in another location that end users will easily discover), a copyright notice stating the following: Portions utilize Microsoft Windows Media Technologies. Copyright (c) 1999-2002 Microsoft Corporation. All Rights Reserved. 3.5 No Alteration to Setup Programs. If any Redistributables in the Software as delivered to you are contained in a separate setup program, then you may only distribute those Redistributables as part of that setup program, without alteration to that setup program or removal of any of its components. 3.6 Prerelease Code. The Software may contain prerelease code that might not operate

correctly, is not at the level of performance and compatibility of the final, generally available product offering, and might be substantially modified prior to shipment of that offering. Microsoft is not obligated to make this or any later version of the Software commercially available. Your license under Section 2 to distribute any Redistributables identified in the documentation as prerelease, alpha, beta or release candidate code or under a similar designation indicating code that is not intended for commercial distribution (collectively, Prerelease Code) is conditioned upon your marking the version of your Application containing the Prerelease Code as BETA, PRE-RELEASE or other reasonable designation of similar import. Your license under this Section 3.3 terminates upon Microsofts publicly announced commencement of the commercial availability of the Microsoft Operating System Product for which your Application is developed. 3.7 Identified Software. If you use the Redistributables, then in addition to your compliance with the applicable distribution requirements described for the Redistributables, the following also applies. Your license rights to Redistributables are conditioned on your (a) not incorporating Identified Software into or combining Identified Software with the Redistributables; (b) not distributing Identified Software in conjunction with the Redistributables; and (c) not using Identified Software in the development of a derivative work of Source Code. Identified Software means software that is licensed pursuant to terms that directly or indirectly create, or purport to create, obligations for Microsoft with respect to the Redistributables or grant, or purport to grant, to any third party any rights or immunities under Microsofts intellectual property or proprietary rights in the Redistributables. Identified Software includes, without limitation, any software that requires as a condition of its use, modification and/or distribution that any other software incorporated into, derived from or distributed with such software must also be disclosed or distributed in source code form, licensed for the purpose of making derivative works, or redistributable at no charge. 4. COMPONENT EULAS. As a kit of development tools and other Microsoft software programs (each such tool or software program, a Component), the Software may contain one or more Components for which a separate end-user license agreement (a Component EULA) may appear upon installation of the applicable Component. In the event of inconsistencies between this EULA and any Component EULA, the terms of the Component EULA will control as to the applicable Component. 5. RESERVATION OF RIGHTS AND OWNERSHIP. The Software is licensed, not sold. Microsoft reserves all rights not expressly granted to you in this EULA. The Software is protected by copyright and

other intellectual property laws and treaties. Microsoft or its suppliers own the title, copyright, and other intellectual property rights in the Software. 6. LIMITATIONS ON REVERSE ENGINEERING, DECOMPILATION, AND DISASSEMBLY. You may not reverse engineer, decompile, or disassemble the Software, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation. 7.NO RENTAL OR COMMERCIAL HOSTING. You may not rent, lease, lend or provide commercial hosting services with the Software. 8. CONSENT TO USE OF DATA.You agree that Microsoft and its affiliates may collect and use technical information gathered as part of the product support services provided to you, if any, related to the Software. Microsoft may use this information solely to improve our products or to provide customized services or technologies to you and will not disclose this information in a form that personally identifies you. 9. LINKS TO THIRD-PARTY SITES. You may link to third-party sites through the use of the Software. The third-party sites are not under the control of Microsoft, and Microsoft is not responsible for the contents of any third-party sites, any links contained in third-party sites, or any changes or updates to third-party sites. Microsoft is not responsible for web-casting or any other form of transmission received from any third-party sites. Microsoft is providing these links to third-party sites to you only as a convenience, and the inclusion of any link does not imply an endorsement by Microsoft of the third-party site. 10. ADDITIONAL SOFTWARE OR SERVICES. This EULA applies to updates, supplements, add-on components or Internet-based services components of the Software that Microsoft may provide to you or make available to you after the date you obtain your initial copy of the Software, unless Microsoft provides other terms along with the update, supplement, add-on component, or Internet-based services component. Microsoft reserves the right to discontinue any Internet-based services provided to you or made available to you through the use of the Software. 11. EXPORT RESTRICTIONS. You acknowledge that the Software is subject to U.S. export jurisdiction. You agree to comply with all applicable international and national laws that apply to the Software, 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/>. 12. SOFTWARE TRANSFER. The initial user of the Software may make a one-time permanent transfer of this EULA and Software to another end user, provided the initial user retains no copies of the Software. This transfer must include all of the Software (including all component parts, the media and printed materials, any upgrades, this EULA, and, if applicable, the Certificate of Authenticity). The transfer may not be an indirect transfer, such as a consignment. Prior to the transfer, the end user receiving the Software must agree to all the EULA terms. 13. 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 and all of its component parts. 14. DISCLAIMER OF WARRANTIES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND ITS SUPPLIERS PROVIDE THE SOFTWARE AND SUPPORT SERVICES (IF ANY) AS IS AND WITH ALL FAULTS, AND HEREBY DISCLAIM ALL OTHER WARRANTIES AND CONDITIONS, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY (IF ANY) IMPLIED WARRANTIES, DUTIES OR CONDITIONS OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR PURPOSE, OF RELIABILITY OR AVAILABILITY, OF ACCURACY OR COMPLETENESS OF RESPONSES, OF RESULTS, OF WORKMANLIKE EFFORT, OF LACK OF VIRUSES, AND OF LACK OF NEGLIGENCE, ALL WITH REGARD TO THE SOFTWARE AND THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT OR OTHER SERVICES, INFORMATION, SOFTWARE, AND RELATED CONTENT THROUGH THE SOFTWARE OR OTHERWISE ARISING OUT OF THE USE OF THE SOFTWARE. ALSO, THERE IS NO WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO DESCRIPTION, OR NONINFRINGEMENT WITH REGARD TO THE SOFTWARE. 15. 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, PUNITIVE, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR LOSS OF PROFITS OR CONFIDENTIAL OR OTHER INFORMATION, FOR BUSINESS INTERRUPTION, FOR PERSONAL INJURY, FOR LOSS OF PRIVACY, FOR FAILURE TO MEET ANY DUTY INCLUDING

OF GOOD FAITH OR OF REASONABLE CARE, FOR NEGLIGENCE, AND FOR 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, THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT OR OTHER SERVICES, INFORMATON, SOFTWARE, AND RELATED CONTENT THROUGH THE SOFTWARE OR OTHERWISE ARISING OUT OF THE USE OF THE SOFTWARE, OR OTHERWISE UNDER OR IN CONNECTION WITH ANY PROVISION OF THIS EULA, EVEN IN THE EVENT OF THE FAULT, TORT (INCLUDING NEGLIGENCE), MISREPRESENTATION, STRICT LIABILITY, BREACH OF CONTRACT OR BREACH OF WARRANTY OF MICROSOFT OR ANY SUPPLIER, AND EVEN IF MICROSOFT OR ANY SUPPLIER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 16. LIMITATION OF LIABILITY AND REMEDIES. NOTWITHSTANDING ANY DAMAGES THAT YOU MIGHT INCUR FOR ANY REASON WHATSOEVER (INCLUDING, WITHOUT LIMITATION, ALL DAMAGES REFERENCED HEREIN AND ALL DIRECT OR GENERAL DAMAGES IN CONTRACT OR ANYTHING ELSE), THE ENTIRE LIABILITY OF MICROSOFT AND ANY OF ITS SUPPLIERS UNDER ANY PROVISION OF THIS EULA AND YOUR EXCLUSIVE REMEDY HEREUNDER SHALL BE LIMITED TO THE GREATER OF THE ACTUAL DAMAGES YOU INCUR IN REASONABLE RELIANCE ON THE SOFTWARE UP TO THE AMOUNT ACTUALLY PAID BY YOU FOR THE SOFTWARE OR US$5.00. THE FOREGOING LIMITATIONS, EXCLUSIONS AND DISCLAIMERS (INCLUDING SECTIONS 14, 15 AND 16) SHALL APPLY TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, EVEN IF ANY REMEDY FAILS ITS ESSENTIAL PURPOSE. 17. U.S. GOVERNMENT LICENSE RIGHTS. All Software provided to the U.S. Government pursuant to solicitations issued on or after December 1, 1995, is provided with the commercial license rights and restrictions described elsewhere herein. All Software 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 DFAR, 48 CFR 252.227-7013 (OCT 1988), as applicable. 18. APPLICABLE LAW. If you acquired this Software in the United States, this EULA is governed by the laws of the State of Washington. If you acquired this Software in Canada, unless expressly prohibited by local law, this EULA is governed by the laws in force in the Province of Ontario, Canada; and, in respect of any dispute which may arise hereunder, you consent to the jurisdiction of the federal and provincial courts sitting in Toronto, Ontario. If you acquired this Software in the European Union, Iceland, Norway, or

Switzerland, then local law applies. If you acquired this Software in any other country, then local law may apply. 19. ENTIRE AGREEMENT; SEVERABILITY. This EULA (including any addendum or amendment to this EULA which is included with the Software) is the entire agreement between you and Microsoft relating to the Software 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 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. If any provision of this EULA is held to be void, invalid, unenforceable or illegal, the other provisions shall continue in full force and effect. Si vous avez acquis votre produit Microsoft au CANADA, la garantie limite suivante vous concerne : DNI DE GARANTIES. Le Logiciel et les services de soutien technique (le cas chant) sont fournis TELS QUELS ET AVEC TOUS LES DFAUTS par Microsoft et ses fournisseurs, lesquels par les prsentes dnient toutes autres garanties et conditions expresses, implicites ou en vertu de la loi, notamment (le cas chant) les garanties, devoirs ou conditions implicites de qualit marchande, dadaptation un usage particulier, dexactitude ou dexhaustivit des rponses, des rsultats, des efforts dploys selon les rgles de lart, dabsence de virus et de ngligence, le tout lgard du Logiciel et de la prestation des services de soutien technique ou de lomission dune telle prestation. PAR AILLEURS, IL NY A AUCUNE GARANTIE OU CONDITION QUANT AU TITRE DE PROPRIT, LA JOUISSANCE OU LA POSSESSION PAISIBLE, LA CONCORDANCE UNE DESCRIPTION NI QUANT UNE ABSENCE DE CONTREFAON CONCERNANT LE LOGICIEL. EXCLUSION DES DOMMAGES ACCESSOIRES, INDIRECTS ET DE CERTAINS AUTRES DOMMAGES. DANS LA MESURE MAXIMALE PERMISE PAR LES LOIS APPLICABLES, EN AUCUN CAS MICROSOFT OU SES FOURNISSEURS NE SERONT RESPONSABLES DES DOMMAGES SPCIAUX, CONSCUTIFS, ACCESSOIRES OU INDIRECTS DE QUELQUE NATURE QUE CE SOIT (NOTAMMENT, LES DOMMAGES LGARD DU MANQUE GAGNER OU DE LA DIVULGATION DE RENSEIGNEMENTS

CONFIDENTIELS OU AUTRES, DE LA PERTE DEXPLOITATION, DE BLESSURES CORPORELLES, DE LA VIOLATION DE LA VIE PRIVE, DE LOMISSION DE REMPLIR TOUT DEVOIR, Y COMPRIS DAGIR DE BONNE FOI OU DEXERCER UN SOIN RAISONNABLE, DE LA NGLIGENCE ET DE TOUTE AUTRE PERTE PCUNIAIRE OU AUTRE PERTE DE QUELQUE NATURE QUE CE SOIT) SE RAPPORTANT DE QUELQUE MANIRE QUE CE SOIT LUTILISATION DU LOGICIEL OU LINCAPACIT DE SEN SERVIR, LA PRESTATION OU LOMISSION DUNE TELLE PRESTATION DE SERVICES DE SOUTIEN TECHNIQUE OU AUTREMENT AUX TERMES DE TOUTE DISPOSITION DU PRSENT EULA OU RELATIVEMENT UNE TELLE DISPOSITION, MME EN CAS DE FAUTE, DE DLIT CIVIL (Y COMPRIS LA NGLIGENCE), DE RESPONSABILIT STRICTE, DE VIOLATION DE CONTRAT OU DE VIOLATION DE GARANTIE DE MICROSOFT OU DE TOUT FOURNISSEUR ET MME SI MICROSOFT OU TOUT FOURNISSEUR A T AVIS DE LA POSSIBILIT DE TELS DOMMAGES. LIMITATION DE RESPONSABILIT ET RECOURS. Malgr les dommages que vous puissiez subir pour quelque motif que ce soit (notamment, tous les dommages susmentionns et tous les dommages directs ou gnraux), lobligation intgrale de Microsoft et de lun ou lautre de ses fournisseurs aux termes de toute disposition du prsent EULA et votre recours exclusif lgard de tout ce qui prcde se limite au plus lev entre les montants suivants : le montant que vous avez rellement pay pour le Logiciel ou 5,00 $US. Les limites, exclusions et dnis qui prcdent (y compris les clauses ci-dessus), sappliquent dans la mesure maximale permise par les lois applicables, mme si tout recours natteint pas son but essentiel. La prsente Convention est rgie par les lois de la province dOntario, Canada. Chacune des parties la prsente reconnat irrvocablement la comptence des tribunaux de la province dOntario et consent instituer tout litige qui pourrait dcouler de la prsente auprs des tribunaux situs dans le district judiciaire de York, province dOntario. Au cas o vous auriez des questions concernant cette licence ou que vous dsiriez vous mettre en rapport avec Microsoft pour quelque raison que ce soit, veuillez contacter la succursale Microsoft desservant votre pays, dont ladresse est fournie dans ce produit, ou crivez : Microsoft Sales Information Center, One Microsoft Way, Redmond, Washington 98052-6399.

Microsoft Win32 SDK Redist License Text Platform Software Development Kit Redistributable Code ====================================================== 64-bit Runtimes for MFC and ATL =============================== msvcrt.dll msvcp60.dll msvcirt.dll mfc42u.dll mfc42kor.dll mfc42jpn.dll mfc42ita.dll mfc42fra.dll mfc42esp.dll mfc42enu.dll mfc42deu.dll mfc42cht.dll mfc42chs.dll mfc42.dll atl.dll Visual Basic MMC Snap-in Designer ================================= mssnapr.dll Static LIB files ================ certidl.lib d3dx.lib d3dx8.lib d3dx8dt.lib d3dxd.lib

Dbcs.Lib dinput.lib dinput8.lib dprintf.lib DtcHelp.Lib DxErr8.lib Ex2KSdk.lib Ex2KSdkD.lib Fci.Lib Fdi.Lib GlAux.Lib Htmlhelp.Lib Ihvlink.Lib MAPI.Lib MiniDump.Lib MMC.Lib MsMqEp.Lib odbccp32.lib PEnter.Lib RpcNdr.Lib sadapi.lib ScrnSave.Lib ScrnSavW.Lib Snacli.Lib srchuuid.lib strsafe.lib unicows.lib w32umode.lib WinStrm.Lib xaSwitch.Lib xoleHlp.Lib Windows Media Services 9 Series files ===================================== interop_msxml.dll microsoft.windowsmediaservices.dll

WMSServerTypeLib.dll

Related items available for download at ======================================= http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdkredist.htm

Quadralay Webworks Electronic End User License Agreement NOTICE TO USER: THIS IS A CONTRACT BETWEEN YOU AND QUADRALAY CORPORATION ("QUADRALAY"). BY INDICATING YOUR ACCEPTANCE BELOW, YOU ACCEPT ALL THE TERMS AND CONDITIONS OF THIS AGREEMENT. This Quadralay End User License Agreement accompanies a Quadralay software product ("Software") and related explanatory materials ("Documentation"). The term "Software" shall also include any upgrades, modified versions, updates, additions and copies of the Software licensed to you by Quadralay. This is a license agreement and not an agreement for sale. Quadralay continues to own the copy of the Software and the physical media contained in this package and any other copy that you are authorized to make pursuant to this Agreement. Quadralay grants to you a nonexclusive license to use the Software and Documentation, provided that you agree to the following: 1. Use of the Software. 1.1. You may install the Software in a single location on a hard disk or other storage device of a single computer. 1.2. You may display, modify, reproduce and distribute any content, in whole or in part, that are included with the Software (unless a specific notice indicates to the contrary), provided such content is not distributed on a stand-alone basis. Such content may not be used in the production of lewd, obscene or pornographic material. 1.3. You may make one backup copy of the Software, provided your backup copy is not installed or used on any computer.

1.4. HOME USE. The primary user of the computer on which the Software is installed or used may also install the Software on one home or portable computer. However, the Software may not be used on the secondary computer by another person at the same time the Software on the primary computer is being used. 1.5 TRAINING. This software is not to be used for any public or on-site training classes unless authorized in writing. 2. Copyright. The Software is owned by Quadralay and its suppliers, and its structure, organization and code are the valuable trade secrets of Quadralay and its suppliers. The Software is also protected by United States Copyright Law and International Treaty provisions. You must treat the Software just as you would any other copyrighted material, such as a book. You may not copy the Software or the Documentation, except as set forth in the "Use of the Software" section. Any copies that you are permitted to make pursuant to this Agreement must contain the same copyright and other proprietary notices that appear on or in the Software. You agree not to modify, adapt or translate the Software except as may be expressly permitted under the European Directive on the Legal Protection of Computer Programs (14 May 1991) ("the Directive"). You also agree not to reverse engineer, decompile, disassemble or otherwise attempt to discover the source code of the Software or reverse engineer templates, except as may be expressly permitted under the Directive. Trademarks shall be used in accordance with accepted trademark practice, including identification of trademark owner's name. Trademarks can only be used to identify printed output produced by the Software. Such use of any trademark does not give you any rights of ownership in that trademark. Except as stated above, this Agreement does not grant you any intellectual property rights in the Software. 3. Transfer. You may not rent, lease, sublicense or lend the Software or Documentation. You may, however, transfer all your rights to use the Software and Documentation to another person or legal entity provided that (i) you transfer this Agreement, the Software, including all copies, updates and prior versions and all copies of font software converted into other formats, and the Documentation to such person or entity, (ii) you retain no copies, including copies stored on a computer, and (iii) that the receiving party agrees to be bound by the terms and conditions of this Agreement. 4. Multiple Environment Software/Multiple Language Software/Dual Media Software/Multiple Copies/Upgrades. If this package contains, or, in connection with the acquisition of the Software contained in this package you receive, two or more operating environment versions of the Software (e.g. Macintosh, Windows, Unix or NT, two or more language translation versions of the Software, the same Software on two or more media (e.g., diskettes and a CD-ROM), and/or

you otherwise receive two or more copies of the Software, you still may only use the Sotfware on a single computer. You may make one back-up copy, in accordance with the terms of this Agreement, for each version of the Software you use. You may not rent, lease, sublicense, lend or transfer versions or copies of the Software you do not use, or Software contained on any unused media, except as part of the permanent transfer of all Software and Documentation as described above. If you acquire an upgrade or update for Software, you may use the previous version for ninety (90) days after you receive the new version in order to assist you in the transition to the new version, after which time you no longer have a license to use the previous version. 5. Limited Warranty. Quadralay warrants to you that the Software will perform substantially in accordance with the Documentation for the thirty (30) day period following your receipt of the Software. To make a warranty claim, you must return the Software to the location where you obtained it along with a copy of your sales receipt within such thirty (30) day period. If the Software does not perform substantially in accordance with the Documentation, the entire and exclusive liability and remedy shall be limited to either, at Quadralay's option, the replacement of the Software or the refund of the license fee you paid for the Software. QUADRALAY AND ITS SUPPLIERS DO NOT AND CANNOT WARRANT THE PERFORMANCE OR RESULTS YOU MAY OBTAIN BY USING THE SOFTWARE OR DOCUMENTATION. THE FOREGOING STATES THE SOLE AND EXCLUSIVE REMEDIES FOR QUADRALAY'S OR ITS SUPPLIERS' BREACH OF WARRANTY. EXCEPT FOR THE FOREGOING LIMITED WARRANTY, QUADRALAY AND ITS SUPPLIERS MAKE NO WARRANTIES, EXPRESS OR IMPLIED, AS TO NONINFRINGEMENT OF THIRD PARTY RIGHTS, MERCHANTABILITY, OR FITNESS FOR ANY PARTICULAR PURPOSE. Some states or jurisdictions do not allow the exclusion of implied warranties or limitations on how long an implied warranty may last, so the above limitations may not apply to you. To the extent permissible, any implied warranties are limited to thirty (30) days. This warranty gives you specific legal rights. You may have other rights which vary from state to state or jurisdiction to jurisdiction. 6. Limitation of Liability. IN NO EVENT WILL QUADRALAY OR ITS SUPPLIERS BE LIABLE TO YOU FOR ANY CONSEQUENTIAL, INCIDENTAL OR SPECIAL DAMAGES, INCLUDING ANY LOST PROFITS OR LOST SAVINGS, EVEN IF AN QUADRALAY REPRESENTATIVE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY THIRD PARTY. Some states or jurisdictions do not allow the exclusion or limitation of incidental, consequential or special damages, so the above limitations may not apply to you.

7. Governing Law and General Provisions. This Agreement will be governed by the laws in force in the State of Texas excluding the application of its conflicts of law rules. This Agreement will not be governed by the United Nations Convention on Contracts for the International Sale of Goods, the application of which is expressly excluded. If any part of this Agreement is found void and unenforceable, it will not affect the validity of the balance of the Agreement, which shall remain valid and enforceable according to its terms. You agree that the Software will not be shipped, transferred or exported into any country or used in any manner prohibited by the United States Export Administration Act or any other export laws, restrictions or regulations. This Agreement shall automatically terminate upon failure by you to comply with its terms. This Agreement may only be modified in writing signed by an authorized officer of Quadralay. This is the entire agreement between Quadralay and you relating to the Software and the Documentation and it supersedes any prior representations, discussions, undertakings, end user license agreements, communications or advertising relating to the Software and the Documentation. 8. Notice to United States Government End Users. The Software and Documentation are "Commercial Items," as that term is defined at 48 C.F.R. 2.101, consisting of "Commercial Computer Software" and "Commercial Computer Software Documentation," as such terms are used in 48 C.F.R. 12.212 or 48 C.F.R. 227.7202, as applicable. Consistent with 48 C.F.R. 12.212 or 48 C.F.R. 227.7202-1 through 227.7202-4, as applicable, the "Commercial Computer Software" and "Commercial Computer Software Documentation" are being licensed to U.S. Government end users (i) only as "Commercial Items" and (ii) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Webworks is a trademark of Quadralay Corporation. Macintosh is a registered trademark of Apple Computer, Inc. Windows and NT are registered trademarks of Microsoft Corporation. 091.8/AD/other

SellBrothers IDispImpl2
dispimpl2.h: Alternative implementations of IDispatch / Copyright (c) 1998-2003 Chris Sells

All rights reserved. / History: 6/11/03: -Ehab Kashkash (ekashkash@hotmail.com): Added "typename" keyword when initializing static variables of user-defined types (_tihclass) in order to be able to compile with VS.NET. 3/3/00: -Added some description of using IDelegatingDispImpl with controls to satisfied picky control contains (like VB). Thanks to Greg Kedge [Greg.Kedge@usa.xerox.com] for providing the initial draft. 7/22/99 (later again...): -Simon Fell (atl@ZAKS.DEMON.CO.UK) pointed out a bug where I don't actually derived from D in IDelegatingDispImpl. Doh! 7/22/99 (sometime later): -Put optional D back in as a base, but default to IDispatch, allowing you to use IDelegatingDispImpl like so: class CFoo : public IDelegatingDispImpl<IFoo, &IID_IFoo, DFoo>... 7/22/99: -Simplified usage of IDelegatingDispImpl. You will have to change your usage from: class CFoo : public IDelegatingDispImpl<DFoo, IFoo>... to: class CFoo : public IDelegatingDispImpl<IFoo>... 10/25/98:

-Initial release. NO WARRANTIES ARE EXTENDED. USE AT YOUR OWN RISK. Contact the author with suggestions or comments at csells@sellsbrothers.com. / This header defines three C++ classes for use in implementing dispatch-based interfaces: -IDualDispImpl for implementing dual interfaces. -IDelegatingDispImpl for implementing IDispatch by delegation to another interface (typically a custom interface). -IRawDispImpl for implementing raw dispinterfaces. These classes are useful because ATL's IDispatchImpl can only implement duals. / IDualDispImpl: For use with dispatch-based interfaces declared like so: [dual] interface IFoo : IDispatch { ... } IDualDispImpl implements all four IDispatch methods. IDualDispImpl gets the IDispatch vtbl entries by deriving from the IDispatch that servers as the base class for the dual interface. IDualDispImpl is just like ATL's IDispatchImpl (in fact, it derives from IDispatchImpl), but it uses __uuidof to make the usage simplier.

Usage: class CFoo : ..., public IDualDispImpl<IFoo> / IDelegatingDispImpl: For implementing IDispatch in terms of another (typically custom) interface, e.g.: [oleautomation] interface IFoo : IUnknown { ... } IDelegatingDispImpl implements all four IDispatch methods. IDelegatingDispImpl gets the IDispatch vtbl entries by deriving from IDispatch in addition to the implementation interface. Usage: class CFoo : ..., public IDelegatingDispImpl<IFoo> In the case where the coclass is intended to represent a control, there is a need for the coclass to have a [default] dispinterface. Otherwise, some control containers (notably VB) throw arcane error when the control is loaded. For a control that you intend to provide the custom interface and delegating dispatch mechanism, you will have to provide a dispinterface defined in terms of a custom interface like so: dispinterface DFoo { interface IFoo; } coclass Foo {

[default] interface DFoo; interface IFoo; }; For every other situation, declaring a dispinterface in terms of a custom interface is not necessary to use IDelegatingDispatchImpl. However, if you'd like DFoo to be in the base class list (as needed for the caveat control), you may use DFoo as the base class instead of the default template argument IDispatch like so: Usage: class CFoo : ..., public IDelegatingDispImpl<IFoo, &IID_IFoo, DFoo> / IRawDispImpl: For use with dispatch-based interfaces declared like so: dispinterface DFoo { properties: ... methods: ... } IRawDispImpl implements three of the IDispatch methods. Invoke is left to the implementor. Usage: class CFoo : ..., public IRawDispImpl<DFoo> { ... STDMETHODIMP Invoke(...); Implemented by hand. }; /

Ryan Dahl's http parser Copyright 2009,2010 Ryan Dahl <ry@tinyclouds.org> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

You might also like