Annotation of mstools/ole20/i386/readme.wri, revision 1.1.1.1

1.1       root        1: 1��F{&(&(&)&*&+&,&&
                      2: 
                      3: OLE 2.0 Toolkit -- April 1993 Release
                      4: 
                      5: MicrosoftR Object Linking and Embedding
                      6:  Version 2 for the WindowsTM NT Operating System
                      7: Beta2 Release Notes
                      8: July 1993
                      9: 
                     10: 
                     11: 
                     12: This is a legal agreement between you (either an individual or an entity), the end user, and Microsoft 
                     13: Corporation.  If you do not agree to the terms of this Agreement, promptly return the disks and the 
                     14: accompanying items (including written materials and binders or other containers) to Microsoft Corporation.
                     15: 
                     16: 
                     17: MICROSOFT LICENSE AGREEMENT FOR PRE-RELEASE PRODUCT
                     18: (Microsoft Object Linking and Embedding (OLE) Version 2.0 for Windows NT, Beta2 Release)
                     19: 
                     20: 
                     21: 
                     22: 1.  GRANT OF LICENSE.  Microsoft grants you the non-exclusive, non-assignable right to make an unlimited number of copies of the enclosed software (including all OLE libraries, debug utilities, and development tools) and documentation  (collectively, "PRODUCT") solely for internal use for the purposes of testing and evaluation.  You may not rent, lease, sell, sublicense, assign, or otherwise transfer this PRODUCT.  You may not reverse engineer, decompile, or disassemble the PRODUCT.  You must cease use of the PRODUCT upon the earlier of either Microsoft's public release of the commercial version of the PRODUCT, or upon request by Microsoft.
                     23: 
                     24: 2.  PRE-RELEASE CODE.  This PRODUCT is pre-release code and is not at the level of performance and compatibility of the final, generally available product offering.  The PRODUCT may not operate correctly and may be substantially modified prior to first commercial shipment.
                     25: 
                     26: 3.  COPYRIGHT.  The PRODUCT is owned by Microsoft or its suppliers and is protected by United States copyright laws and international treaty provisions.  Therefore, you must treat the PRODUCT like any other copyrighted material (e.g. a book or musical recording).  
                     27: 
                     28: 4.  TERMINATION.  Microsoft may terminate this Agreement in writing at any time, with or without cause.  Upon termination, you shall immediately return, or certify destruction of, all full or partial copies of the PRODUCT and all other materials provided by Microsoft.  You agree that your obligation regarding non-disclosure of any specific information shall terminate at such time as that specific information is in the public domain through no fault of your own, or upon written consent by Microsoft.
                     29: 
                     30: 5.  SAMPLE CODE.  Microsoft grants you a non-exclusive royalty-free right to use and modify the source code version and to reproduce and distribute the object code version of those portions of the PRODUCT which are designated as Sample Code provided that you:  (a) distribute the Sample Code only in conjunction with and as part of your software product; (b) do not use Microsoft's name, logo, or trademarks to market your software application product; and (c) 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 software application product.  
                     31: 
                     32: DISCLAIMER OF WARRANTY
                     33: 
                     34:  The PRODUCT, including Sample Code, constitutes pre-release code and may be changed substantially before the first commercial release.  The PRODUCT and Documentation are provided "AS IS" WITHOUT WARRANTY OF ANY KIND.  MICROSOFT FURTHER DISCLAIMS ALL IMPLIED WARRANTIES INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR OF FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK ARISING OUT OF THE USE OR PERFORMANCE OF THE PRODUCT AND DOCUMENTATION REMAINS WITH YOU.
                     35: 
                     36: IN NO EVENT SHALL MICROSOFT OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE PRODUCT OR DOCUMENTATION, EVEN IF MICROSOFT HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.  BECAUSE SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, THE ABOVE LIMITATION MAY NOT APPLY TO YOU.
                     37: 
                     38: U.S. GOVERNMENT RESTRICTED RIGHTS
                     39: 
                     40: The PRODUCT and Documentation are provided with RESTRICTED RIGHTS.  Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of The Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(i) and (2) of Commercial Computer Software -- Restricted Rights at 48 CFR 52.227-19, as applicable.  Manufacturer is Microsoft Corporation/ One Microsoft Way/Redmond, WA  98052-6399.
                     41: 
                     42: This Agreement is governed by the laws of the State of Washington.
                     43: 
                     44: Should you have any questions concerning this Agreement, or if you desire to contact Microsoft for any reason, please write: 
                     45: Microsoft Corporation OLE Beta Coordinator/One Microsoft Way/ Redmond, WA  98052-6399.
                     46: 
                     47: Before using this Beta2 release of the OLE 2.0 Toolkit for Windows NT (referred to herein as 'this Beta OLE Toolkit' for brevity), please read the following release notes.
                     48: 
                     49: Purpose of Release
                     50: This Beta OLE Toolkit provides much improved content, functionality, and documentation over the May 1993 Beta1 release.
                     51: 
                     52: This release shares much of its code and documentation base with the April 1993 final release of the OLE 2.0 Toolkit for Windows. A substantial portion of the overall functionality of OLE 2.0 for Windows NT is now in place and working at some level. However, it is important to keep in mind that this Beta OLE Toolkit is not at the same level of development as the final OLE 2.0 Toolkit for Windows. Some features which were included in the Windows version may not be implemented yet for the Windows NT version, and others may not work properly.
                     53: 
                     54: Contents of this Beta OLE Toolkit
                     55: The following directory structure and files can be found in this release:
                     56: [ROOT]
                     57:        Release notes for this OLE 2.0 Toolkit (this file)
                     58:        Configuration batch files REGINIT.BAT and SETNVOLE.BAT 
                     59: BIN
                     60:        Debug versions of the OLE 2.0 DLLs
                     61:        Sample and test application executables
                     62:        .REG registration files for the sample and test application executables
                     63: DOCS
                     64:        OLE and OLE Automation documentation
                     65:        Help files for  OLE, OLE Automation, and UI Dialog implementation
                     66:        OLE 2.0 Specification
                     67:        Technotes
                     68:        OLE 2.0 Backgrounders
                     69:        Bug reporting template for Compuserve
                     70: H
                     71:        The .H header files
                     72: LIB
                     73:        The .LIB library files 
                     74: SAMPLES
                     75:        Sources for different sample programs demonstrating OLE 2.0 and OLE Automation
                     76:        Sources for OLE 2.0 UI components
                     77: 
                     78: Known Problems
                     79: Known problems with any of the sample or test applications are discussed in the section describing the application.
                     80: 
                     81: Known problems relating to OLE Automation can be found under the heading OLE Automation Issues.
                     82: 
                     83: Configuration
                     84: To properly configure your machine to make use of this Beta OLE Toolkit, create a new directory on your hard disk and copy the entire Beta OLE Toolkit tree from the CD/ROM to this new directory. The default location assumed by certain components in the toolkit is C:\MSTOOLS\OLE20. If you received your copy of this Beta OLE Toolkit with the Win32 SDK, this will be done for you as part of the Win32 SDK Setup procedure.
                     85: 
                     86: Once you've done this you will need to manually run the REGINIT batch file to add registration information concerning Beta OLE Toolkit components to your registry. This batch file will first spawn REGADD.EXE, a tool which is used both to clean up out-of-date (pre-beta2) information in the registry as well as to set certain default OLE information in the registry; simply click on the "RegAdd" menu and select "Cleanup", then click on the "RegAdd" menu and select "Default", then close the tool. The batch file will continue and will run REGEDIT to add registry information specfic to OLE 2.0 and the samples. This will *only* need to be done the first time you install the SDK. Note, however, that REGADD.EXE may be used at any future time to remove all Beta OLE Toolkit related information from the registry if so desired by selecting "Cleanup" from the "RegAdd" menu.
                     87: 
                     88: Please note that any registration information concerning the 32-bit OLE 1.0 test applications included in this release will be registered by the applications themselves when they are executed.
                     89: 
                     90: To properly set the environment for building the sample code you will need to invoke the SETNVOLE batch file, which will add certain Beta OLE Toolkit directories to your PATH and other environment variables. If you wish this can also be done at the system level by way of the "System" applet in the control panel.
                     91: 
                     92: You will need to use the "System" applet in the control panel to add the C:\MSTOOLS\OLE20\BIN directory to your path (assuming a default installation location) in order for certain OLE 1.0 applications (Mail and Cardfile) to work as OLE 1.0 containers properly with OLE 2.0 server applications.
                     93: 
                     94: You will also need to manually create a new Program Group (e.g., Win32 OLE2) in the program manager, and create new Program Items within this new group for each of the .EXE files in the BIN directory of the Toolkit.
                     95: 
                     96: Documentation
                     97: This Beta OLE Toolkit comes with the same electronic versions of the documentation that were released with the April 1993 final release of the OLE 2.0 Toolkit for Windows. Generally speaking, the documentation for the OLE 2.0 Toolkit for Windows is equally applicable for this Beta OLE Toolkit for Windows NT. The accompanying sample code should be used as supporting  material for the documentation.
                     98: 
                     99: Since the publishing of the Programmer's Reference, some edits were made in the documentation. These edits are reflected in the electronic copy of the documentation.  
                    100: 
                    101: A Windows Help file version of the documentation is included to ease the viewing of the documentation online.
                    102: 
                    103: Technotes
                    104: A separate technote file (TECHNOTE.WRI) is included in the DOCS directory.  The file contains helpful information and a more detailed discussion on different subjects and issues that we have found difficult and in a need of a more careful explanation.  Please read the notes before writing your OLE 2.0 application.  Especially the topics about in-place editing should be read carefully when writing in-place editing applications.
                    105: 
                    106: In addition, a separate directory containing tech notes related to OLE Automation is also included.
                    107: 
                    108: Specification
                    109: This Beta OLE Toolkit contains the latest electronic version of the OLE 2.0 Specification.  We have included the specification for those who are interested in a more detailed background and architectural discussion of the OLE 2.0 product.  There is a significant overlap in material between the Programmer's Reference and the Design Specification.  Some of the last minute edits that did not make it in the Programmer's Reference can be found in the Specification.
                    110: 
                    111: Features Currently Implemented
                    112: This Beta OLE Toolkit supports the following major areas of OLE 2 functionality:
                    113: * Compound Files
                    114: * Linking
                    115: * Embedding
                    116: * Drag and Drop
                    117: * Visual (In-Place) Editing
                    118: * Linking to Embedded Objects
                    119: * Compatibility with OLE 1.0 applications
                    120: * OLE Automation
                    121: 
                    122: The sample applications included in this release exercise each of these areas of functionality. In addition, these sample applications implement several of the recommended OLE 2 standard UI dialogs.
                    123: 
                    124: Changes Since the May 1993 Beta1 Release
                    125: The following changes have taken place since the May 1993 Beta1 release:
                    126: 
                    127: Adherance to 16-bit Implementation
                    128:        This release of the 32-bit OLE code for Windows NT uses header files, interfaces, and APIs that
                    129:        are fully compatible with the final release of the 16-bit OLE 2.0 Toolkit for Windows.
                    130: Header File Changes
                    131:        There are a few header file changes since the May Beta1 release.
                    132: Error Code Changes
                    133:        There are a few error code changes since the May Beta1 release.
                    134: Registry Changes/Additions
                    135:        The registration format has been enhanced since the May Beta1 release.
                    136:        All CLSIDs are now stored under a CLSID entry, and all IIDs are under an Interface entry.
                    137:        An OLE entry has been added under the HKEY_LOCAL_MACHINE\SOFTWARE tree which
                    138:        includes the size and location of OLE shared memory, the list of 16-32 name mappings for
                    139:        known dlls, the name of the shared memory server executable, and some miscellaneous info.
                    140:        InprocHandler, Inprocserver now have optional 32 bit equivalents: Inprocserver32,
                    141:        Inprochandler32.  If only the old (16bit) entries are present their value is mapped using
                    142:        the KnownDlls list.
                    143: OLE Automation
                    144:        This Beta OLE Toolkit includes a more complete set of OLE Automation components.
                    145: 
                    146: Areas Subject to Change
                    147: Some of the interfaces will undergo changes in order to have 32-bit OLE 2.0 for Windows NT be Unicode-based.  Our plan is that *all* strings in all APIs and methods, incuding those in structures, will be Unicode, including IDispatch and typeinfo interfaces.
                    148: 
                    149: Please note that ongoing work may result in a change, addition, or deletion of one or more interfaces.
                    150: 
                    151: The changes that may take place between now and the final release:
                    152: * The final release will contain retail versions of the libraries (this Beta is debug only).
                    153: * The docfile format may change.
                    154: * Some of the interfaces may change.
                    155: 
                    156: Hints
                    157: Please consider the following hints when using this Beta OLE Toolkit:
                    158: 1.     Use of the Microsoft Win32 SDK is highly recommended. This Beta OLE Toolkit release was
                    159:        developed using the final release of the Win32 SDK.
                    160: 2.     Before installing this Beta OLE Toolkit on your machine, please make sure that you don't have
                    161:        any OLE 2.0 pre-beta2 components (dlls, libs, sample code, binaries etc.) in ANY directory on
                    162:        your machine.
                    163: 3.     If you experience difficulties where applications cannot find classes that are registered, try 
                    164:        rebuilding the registration database.  Make sure that you follow the new registration guidelines. 
                    165: 4.     In order to correctly use this Beta OLE Toolkit, you need to add the BIN directory to your PATH
                    166:        statement. This is to assure that the sample programs can find the OLE 2.0 DLLs. The batch file
                    167:        SETNVOLE.BAT will take care of this and other important configuration issues for you.
                    168: 5.     To debug incoming messages in your application, place the breakpoint in CSvrLRPC::Invoke.
                    169: 6.     To debug outgoing messages in your application, place the breakpoint in CCliLRPC::Call.
                    170: 7.     To do low level debugging, place the breakpoint in LrpcWndProc.
                    171: 8.     You are able to avoid some compiler problems if you keep the names in nested classes short.
                    172: 9.     If you have a transacted storage, you should not rename an unopened child element more than 
                    173:        once before committing your changes or you will not be able to access it.  For example, if 
                    174:        transacted Storage S contains child A, you shouldn't do the following:
                    175:                pStgS->RenameElement("A", "B")
                    176:                //  optional ops without a Commit...
                    177:                pStgS->RenameElement("B", "C")
                    178:                //  optional ops without a Commit...
                    179:                pStgS->OpenStream("C", ..)  // this will not work correctly
                    180:        A simple solution is to open and release the child before renaming it (if you can't open it that
                    181:        means its already open and you won't experience the above problem).
                    182: 10.    If you begin to notice strange behavior, you might try re-registering the registration information
                    183:        by re-executing the REGINIT batch file.
                    184: 11.    Keep an eye on your TMP or TEMP directory for random .DFT files. These can build up and
                    185:        really use up disk space.
                    186: 12.    Use PVIEW and PVIEWER (supplied with the Win32 SDK) to clean up after any random or
                    187:        unexpected program terminations.
                    188: 
                    189: Issues Related with the OLE 2 Libraries
                    190: 1.     16/32-bit Interoperability is not supported in this release.
                    191: 2.     OLE 1.0/2.0 compatibility is supported in this release.
                    192: 
                    193: Issues Related with the Sample Code
                    194: 1.     Different levels of debug output messages can be enabled in the OUTLINE sample applications.
                    195:        The default level of debug messages is controlled by how the OUTLUI.DLL is built. This DLL
                    196:        maintains a global debug level value which can be modified at run-time (via the Debug menu in
                    197:        the OUTLINE applications--DbgSvr, DbgCntr, DbgISvr, DbgICntr). The debug level in effect
                    198:        applies to all running applications because they all are bound to the same OUTLUI.DLL 
                    199:        instance.
                    200:        The default value for the debug level for OUTLUI.DLL can be controlled by the value of the
                    201:        DEBUG= entry in the UIMAKE.INI.  
                    202:        The following values produce the following levels of debugging information:
                    203:                0 -- no debug messages
                    204:                1 -- a small amount of debug messages
                    205:                2 -- debug messages to trace every OLE method/API called (default)
                    206:                3 -- debug messages to trace important functions in OUTLINE applications
                    207:                4 -- debug messages to trace object reference counting.
                    208: 2.     The OUTLINE series must be compiled with the option to consider 50 characters significant in
                    209:        function names.
                    210: 3.     Although OUTLINE sample code uses the OLE 2.0 UI dialog as a separate DLL, we recommend 
                    211:        that you statically link the OLE 2.0 dialogs with your code.  If you use the UI component as a 
                    212:        separate DLL, please use a unique name and install the DLL in the same directory you install 
                    213:        your application.
                    214: 4.     ICNTROTL does not have a mechanism for managing the number of in-place server .exes that it 
                    215:        keeps running.  Once activated, the servers will not be shut down until the document is closed.  
                    216:        When running in low memory, the applications should implement a mechanism that will take 
                    217:        care of shutting down the least recently used apps whose objects are not in view.
                    218: 5.     ICNTROTL can be used as both inside-out and outside-in capable container.  The option is 
                    219:        controlled via the debug menu in the application.  Note that this menu (and the option to change 
                    220:        the behavior of the application) is provided for debugging purposes only.  A 'real' application 
                    221:        should NOT provide a user control for changing between inside-out and outside-in modes.  When 
                    222:        using ICNTROTL it is recommended that you set the option before inserting any in-place capable 
                    223:        objects (i.e. in the beginning of the session).
                    224: 6.     ISVROTL.EXE is implemented (and registered in the registry) as an inside-out capable 
                    225:        server.  It is recommended that the containers that support in-place editing use ISVROTL in 
                    226:        inside-out fashion.  
                    227:        
                    228:        For a detailed discussion of the behavior and implementation of inside-out vs. outside-in capable 
                    229:        servers and containers, please refer to the OLE 2.0 Toolkit TECHNOTES and Specification.
                    230:        
                    231: OLE Automation Issues
                    232: Ole2Di32.Dll
                    233: Ole2Di32.Dll is included with this release.  There are no known limitations in this area.
                    234: 
                    235: TypLib32.Dll
                    236: TypLib32.Dll is included with this release.  It contains the following known limitations:
                    237: 1.     LoadRegTypeLib does not correctly use information in the registry.  If you specify a full path
                    238:        in the registry (e.g., c:\ole2\stdole.tlb), LoadRegTypeLib ignores this path.
                    239: 2.     ITypeInfo::Invoke does not work correctly with more than one parameter.  All parameters are
                    240:        coerced to the type of the first parameter passed, which is incorrect.
                    241: 
                    242: MkTypLib.Exe
                    243: MkTypLib.Dll is included with this release.  It contains the following known limitations:
                    244: 1.     When importing a library, you must specify a full path for the type library.  Placing the
                    245:        referenced type library in the current directory also works.
                    246: 
                    247: Active Object Registration Functions
                    248: The active object registration functions, which include GetActiveObject, RegisterActiveObject, and RevokeActiveObject, do not work properly in all scenarios.  If you create an object, call RegisterActiveObject, and then release the object, an incorrect state is reached.  Subsequent calls to GetActiveObject do not work properly.
                    249: 
                    250: NLS Support
                    251: Windows NT has built-in National Language Support. Therefore, we will not include any NLS support as part of OLE Automation. This means that OLENLS.H and the associated ASCII locale API functions (CompareStringA, LCMapStringA, GetLocaleInfoA, GetSTringTypeA) defined in OLE2NLS.DLL will not be provided.  These are provided for the 16-bit OLE 2.0 Toolkit for Windows.
                    252: 
                    253: DspCalc2.Exe
                    254: Because of a bug in MkTypLib, calctype.odl contains a reference to stdole.tlb which uses a full path -- "c:\mstools\ole20\bin\stdole.tlb".  If you did not install OLE 2.0 in the default directory, then this path is invalid, and the sample will fail to build.  To fix the problem, correct the path in calctype.odl so that it points to the OLE bin directory.
                    255: 
                    256: Debugging Tools
                    257: DFVIEW
                    258: DFVIEW.EXE is a Windows program that provides a listing of the elements within a docfile.  Just load the file that you want to view via the File.Open... menu.  DFVIEW has a Help dialog that will explain in detail how to use the tool.
                    259:        
                    260: IDataObject VIEWER
                    261: The IDataObject Viewer can be used for looking at the list of data formats offered by IDataObject, either from a clipboard or a drag/drop operation.
                    262: 
                    263: LRPC Message Monitor 
                    264: LRPC Message Monitor is a tool that displays the messages passed between two applications.  You are able to view the messages in the window and scroll through them.
                    265: 
                    266: UUIDGEN
                    267: UUIDGEN.EXE is a program which generates a unique class id (CLSID).  For UUIDGEN to correctly generate a unique id, you need to run it on a machine that has a network card.  For details on CLSIDs and their use, please refer to the documentation in the Programmer's Reference and Chapter 4 of the Design Specification.  If you don't have a network card in your system and you need a CLSID you can obtain one by calling Microsoft at 1-800-358-5015.
                    268: 
                    269: Sample Code
                    270: This release contains several different sample programs with source code.  Please note that the sample programs are not complete, that they do not have equal implementation of features, and that not all of them exercise all of the features implemented in the Beta OLE 2.0 libraries.
                    271: 
                    272: Please note that all MAKEFILEs assume that you have properly configured your machine using the provided SETNVOLE batch file.
                    273: 
                    274: SPOLY.EXE
                    275: SPOLY is a very simple IDispatch-only OLE 2.0 server that allows containers to create and draw polygons.
                    276: 
                    277: SPOLY2.EXE
                    278: This is an alternate implementation of SPOLY that uses OLE helper functions to automatically delegate IDispatch::Invoke calls to C++ member functions.
                    279: 
                    280: DISPDEMO
                    281: This is a container of the SPOLY application. DISPDEMO implements a C++ wrapper class that creates and communicates with SPOLY polygons via IDispatch. The rest of DISPDEMO calls this C++ class, and is not aware of IDispatch or remoting.
                    282: 
                    283: DISPCALC
                    284: This is a simple calculator that supports OLE Automation. The calculator's IDispatch implementation is completely provided by a component object returned from the new API CreateStdDispatch.
                    285: 
                    286: DSPCALC2
                    287: This is a simple calculator that supports OLE Automation. The calculator has a type library and uses this type library to create its IDispatch interface.
                    288: 
                    289: TIBROWSE
                    290: TIBROWSE is a tool which allows you to browse type libraries, which are .tlb files.  This sample shows how to use the ITypeLib and ITypeInfo interfaces.
                    291: 
                    292: OUTLINE SERIES
                    293: This sample application set demonstrates taking a 'base' application (in this case OUTLINE.EXE)
                    294: and extending it into an OLE 2.0 server and container (both in-place editing and non-in-place editing versions are provided -- the inplace editing version can contain both inside-out and outside-in objects).
                    295: 
                    296: All five applications are built from common sources.  Files that begin with CNTR are specific to
                    297: the container version, files that begin with ICNTR are specific to the in-place container version, files that begin with SVR are specific to the server version and files that begin with ISVR are specific to the in-place server version .  These sample applications highlight the changes necessary to implement OLE into an existing application.  The container versions have the same functionality as the base (OUTLINE) and also allow you to embed and link objects.  
                    298: 
                    299: All OUTLINE applications support loading and saving files using docfiles for storage.  The five versions of the application are built in five subdirectories (outline\outline, outline\cntroutl, outline\icntrotl, outline\isvrotl, outline\svroutl).  The same MAKEFILE (makefile) is used to build all five applications:
                    300: 
                    301:        nmake                   -- builds OUTLINE base application
                    302:        nmake APP=svroutl       -- builds SVROUTL server application
                    303:        nmake APP=isvrotl       -- builds ISVROTL in-place server application
                    304:        nmake APP=cntroutl      -- builds CNTROUTL container application
                    305:        nmake APP=icntrotl      -- builds ICNTROTL in-place container application
                    306:        nmake clean             -- deletes generated files for OUTLINE
                    307:        nmake APP=XX clean      -- deletes generated files for XX
                    308: 
                    309: BTTNCUR.DLL 
                    310: SAMPLES\BTTNCUR directory contains the source files that are used for creating the standard button images and cursors DLL.  The MAKEFILE in the directory will build the BTTNCUR.DLL.  For the use of the DLL, please see the OUTLINE sample code sources.   This is version 1.1 of BTTNCUR, an update from the version 1.0 DLL shipped with "The Windows Interface" book.  CHANGES.TXT file highlights the additions and modifications.  If you use BTTNCUR.DLL you should use a unique name to avoid overwriting.
                    311: 
                    312: GIZMOBAR.DLL
                    313: SAMPLES\GIZMOBAR directory contains the source files that are used for creating the standard gizmobar DLL.  The MAKEFILE in the directory will build the GIZMOBAR.DLL.  For the use of the DLL, please see the OUTLINE sample code sources.  If you use GIZMOBAR.DLL, you should use a unique name to avoid overwriting.
                    314: 
                    315: OLE 2.0 UI Component
                    316: The OUTLINE sample code applications use the standard OLE 2.0 dialogs found in OUTLUI.DLL.  Although the OLE 2.0 UI can be used as a dynamically loaded library (DLL), we recommend that you statically link the dialog code (LIB) with your application.   If you decide to use the OLE 2.0 dialogs as a DLL, please USE A UNIQUE NAME FOR YOUR DLL and install it in the same directory you install your application to avoid name conflict and overwriting.
                    317: 
                    318: Test Applications
                    319: CL32TEST.EXE and SR32TEST.EXE
                    320: Cl32test and Sr32test are test applications that can be used for testing your OLE 2.0 applications.  Both Cl32test and Sr32test are fully featured OLE 2.0 applications.  Additionally, they implement ways to exercise OLE 2.0 features that cannot be found in a 'regular' OLE 2.0 application.  The best way to become familiar with the features provided is to play with the test applications.
                    321: 
                    322: There is a known problem with using Sr32test in interoperability scenarios with OLE 1.0 container applications. In general, Sr32test only works with OLE 2.0 container applications at this time.
                    323: 
                    324: Cl32test does not correctly handle more than a single in-place object within a window. Also, when you delete an InPlaceSDemo1 object from a Cl32test window, you will receive a warning that the reference count is off; just press OK and continue.
                    325: 
                    326: OLETEST.EXE
                    327: OLETEST is an OLE 2.0 application used to test container functionality.  The best way to become familiar with the features provided is to play with the application.  Please note that FileSave does not work properly (although FileSaveAs does), and the Test menu does not work at all.
                    328: 
                    329: SDEMO1.EXE
                    330: This is an OLE 1.0 server sample application upgraded to an OLE 2 server.  It allows you to create
                    331: a rectangle and set its color.  It is an SDI application.  You can create one rectangle at a time.  It
                    332: supports 2 verbs (0=play, 1=edit). For verb play it cycles through the available object color choices.  
                    333: 
                    334: IPSDEMO1.EXE
                    335: This is an OLE 1.0 server sample application upgraded to an OLE 2 server.   IPSDEMO1 is an SDI application.  You can create one rectangle at a time. In addition, IPSDEMO1 supports in-place editing. It supports two verbs (0=play, 1=edit in place). For verb play it cycles through the available object color choices.  IPSDEMO1 has a draggable button bar that can be anchored to the top of the frame window, anchored to the left side, or unanchored as a floating pallet.
                    336: 
                    337: 32-bit OLE 1.0 Test Applications
                    338: A collection of 32-bit OLE 1.0 test applications is provided to enable testing of OLE 1.0/2.0 compatibility.  The best way to become familiar with the features provided is to play with the test applications.
                    339: 
                    340: It is also interesting to note that several 32-bit OLE 1.0 applications come with Windows NT or the Win32 SDK; these include the container applications Cardfile and Mail, and the server applications Media Player, Pbrush, Soundrec, and Packgr32.
                    341: 
                    342: CLTEST.EXE
                    343: CLTEST is a 32-bit OLE 1.0 application used to test container funtionality.
                    344: 
                    345: CLIDEMO.EXE
                    346: CLIDEMO is a 32-bit OLE 1.0 application used to test OLE 1.0/2.0 compatibility.
                    347: 
                    348: SRVRTEST.EXE
                    349: SRVRTEST is a 32-bit OLE 1.0 application used to test server funtionality.
                    350: 
                    351: SRVRDEMO.EXE
                    352: SRVRDEMO is a 32-bit OLE 1.0 application used to test OLE 1.0/2.0 compatibility.
                    353: 
                    354: Developer Support
                    355: Technical support for this Beta OLE 2.0 Toolkit release for Windows NT will be supported on Compuserve via the WINOBJ forum.  All communication (questions, bug reporting etc.) will happen via this forum of  Compuserve. Below are the current section names:
                    356: 
                    357: 1) Non Tech Services
                    358: 2) Component Obj Model
                    359: 3) Structured Storage
                    360: 4) OLE: User Interface
                    361: 5) OLE: Drag&Drop
                    362: 6) OLE: Naming/Monikers
                    363: 7) OLE1: Interop issues
                    364: 8) OLE: Automation
                    365: 13) OLE1 Issues
                    366: 17) Strategic Issues
                    367: 
                    368: Bug Reporting Template
                    369: All bug reporting should be done via Compuserve by uploading a report using the following bug reporting template (this template can also be found in the DOCS subdirectory of the Beta OLE Toolkit):
                    370: 
                    371:   Bug Title:  (66 characters maximum)
                    372:   Product:  July 1993 Beta2 OLE 2.0 Toolkit for Windows NT
                    373:   Version Number:  [returned by OleBuildVersion()]
                    374:   Description of Bug:  (be as specific as possible)
                    375:   Duplication Scenario: (be a specific as possible)
                    376:   Work-around: (if any)
                    377:   Tools, Services or Applications Running/Versions:
                    378:   Machine Configuration:
                    379:     Computer Brand and Model:
                    380:     Processor Type and Speed:
                    381:     Memory (RAM):
                    382:     Peripherals (include make/model):
                    383:        network cards:
                    384:        network type:
                    385:        hard disk size:
                    386:        other disk/controllers:
                    387:        CD-ROM drive:
                    388:        video adapter:
                    389:   Reproducible:
                    390:        Always
                    391:        Intermittent
                    392:        Not reproducible
                    393:   Severity level:
                    394:        Sev 1:  System crashes, data corruption error
                    395:        Sev 2:  Does not operate correctly
                    396:        Sev 3:  Cosmetic or minor usability problem
                    397:        Sev 4:  Suggestion or documentation error
                    398:   Date:
                    399:   Customer Name:
                    400:   Customer Company:
                    401:   Area Code and Phone:
                    402:   CompuServe ID:
                    403: 
                    404: Questions and Concerns
                    405: Any technical questions or concerns regarding OLE 2.0 should be presented via Compuserve.
                    406: 
                    407: OLE Automation Beta Feedback and Technical Support
                    408: Please use Compuserve's OLE Automation forum for technical support and beta feedback for the OLE Automation components, which include TypLib32.Dll, MkTypLib.Exe and Ole2Di32.Dll.  We value your feedback, which might include bug reports, feature suggestions and documentation suggestions.
                    409: 
                    410: OLE Automation Beta Survey
                    411: An electronic survey can be found in Library 8 of the WINOBJ forum.  To participate in the survey, follow the following steps:
                    412: 
                    413: 1. Download the survey files from Compuserve.  The files are in Library 8 of the WINOBJ forum.
                    414: 
                    415: 2. Run survey.exe from Windows.  After you have finished answering questions, a .CSV will be created.  This file contains your answers.
                    416: 
                    417: 3. Upload your .CSV file to Compuserve.  You should place it in Library 8 of the WINOBJ forum.
                    418: gle at a time.  It
                    419: supports 2 verbs (0=play, 1=edit). For��v�r�n�g�c�\)&X�T�P@LTI\`��
                    420: N&&&&&&&@T�wt�p�l{h}d�`�\MXOThPjLN&&&&&&&jwt�p�l�h�d�a(].YAUHQ^MN&&&&&&&^dwws~o�k�g�c _�![�!W+"S1"O$KN&&&&&&$%$x�&t�&q�(m)j�*f�*c�,_�,\B-Xi-T#.PN&&&&&&#.9.w{.s�.o�.k�.g^1cl1_�1[�1X�3T�3P�3LN&&&&&&&�374w>4t8p+8ly8h�8d�8`�8\;=Xd=T�=P>LN&&&&&&>�Hw�Ht�HpIl#Ih�Jd�J`�K\
                    421: LXUMTdMP�NLN&&&&&&�N�Nx�NtKPp^PmfPiTQefQaR]RY�RU�RQ�TMN&&&&&&&�T�Tx5Vt@Vp�Vl�VhPWd\W`HX\JXXLXTVXPYLN&&&&&&YYwYs!Yo�Yk�Yg�Yc�Y_dZ[tZW�`S�`O�bKN&&&&&&�b�bwdsdp�el�ei�eefaUi]diY�jU�jQ�kMN&&&&&&�k�kw�ms�mp�ol�oh�odp`Qp\apX�pT�pPqLN&&&&&&qqw$qtspsl�sh�sdt`t\KtXZtTitPxtLN&&&&&&&xttw�ts�to�tk�tg�tcu_3u[7uWMuS�uO�uKN&&&&&&�u7vwDvssvo�vk5wg:wc>w_Lw[PwWawSewOywKN&&&&&&yw}ww�ws�wo�wkxg8xd[y`wy\F{XawSewOywKN&&&&&&     ��\�=��wkxg&����&����\�=        &=&=)&=&��&����)&+&\-&\/&\�&\�&\j\l\n\�\�\�\&\\�\�\=����\�\�\�\�    \�   \P\R\j\l\T\V\o\q\�\=����\o\q\�\�\6\�\�\�\>\@\T\o\q\�\=��T�\�\�\�==b=j=�=�=�=@=��<��
                    422: �\-\w\}\�\�\\\$\L\O\e\j\�\�\=����\\\\�\�\�\�\�\�\�\ \ \� \� \=��� "\"\9#\;#\$\$\%$\�%\�%\b&\d&\�&\�&\�&\�(\=���(�(\�(\�(\)\�*\�*\�*\N+\`+\k+\x+\�+\�+\�+\�+\=���+,\,\�,\�,\�,\B-\D-\h-\�-\#.\8.\{.\�.\�.\�.\=���.6/\�/\�/\<0\�0\�0\H1\^1\n1\�1\�1\�1\�2\�2\I3\=��I3K3\�3\�3\4\54\74\>4\�4\�4\5\�1\�1\�2\�2\I3\=��
                    423: 5y5\�5\�5\M6=�6=7=x7=�7=�4\5\�=���&����7.8\�8\�8=.9=�9=�9=6:=X:=�:=�:=�=���&���
                    424: �:�:\     ;\l;=�;=�;=�9=6:=X:=�:=�:=�<��=���;<\D<\�<\�<\=\9=\;=\d=\�=\�=\�=\>\j>\�>\'?\=��'?�?\�?\�?\D@\h@\�@\�@\�@\?A\�A\�A\'B\9B\�B\�B\=���BXC\lC\�C\1D\�D\�D\@E\�E\F\hF\�F\�F\VG\�G\�G\=���G�G\5H\�H\�H\�H\�H\I\I\#I\~I\�I\1J\�J\�J\�J\=���J�J\EK\�K\�K\�K\
                    425: L\UM\WM\dM\XN\�N\�N\�N\KP\MP\=��MP^P\fP\QQ\TQ\hQ\�Q\R\R\�R\�R\�R\�T\�T\�T\�U\=���U�U\3V\5V\@V\�V\�V\�V\PW\RW\\W\JX\LX\VX\Y\Y\=��Y!Y\�Y\�Y\�Y\bZ\dZ\tZ\�Z\�[\�[\
                    426: \\�]\�]\_\_\=��_J_\�_\�_\`\J`\�`\�`\�`\�`\�b\�b\�b\d\d\d\=��d�e\�e\�e\f\�g\�g\]h\_h\Ui\Wi\di\�j\�j\�j\�j\=���jZk\�k\�k\�k\�m\�m\�m\�n\�n\�o\�o\�o\�o\�o\p\=��pQp\Sp\ap\�p\�p\�p\q\q\$q\%r\'r\=r\Ur\lr\�r\=���r�r\�r\�r\�r\�r\s\s\s\�s\�s\
t\It\}t\�t\�t\=���tu\5u\Ou\nu\�u\�u\�u\�u\�u\�u\v\$v\5v\Fv\Ov\=��Ov^v\qv\�v\�v\�v\w\3w\<w\Nw\cw\{w\�w\�w\�w\x\=��xx\8x\Yy\[y\wy\�y\�y\Yz\[z\�z\�z\F{\H{\�w\x\=��
f�=�/����2�!&�;���(���z��z�����=)&=&��&����&.��&\�&\j\l\n\�\�\�\&\\�\�\=��&Times New Roman\�   \�   \P\R\j\l\T\V\o\q\�\=��

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.