**********************************************************************
* DISCLAIMER OF WARRANTIES:                                          *
*                                                                    *
* The following enclosed code is sample code created by IBM          *
* Corporation.  This sample code is not part of any standard IBM     *
* product and is provided to you solely for the purpose of assisting *
* you in the development of your applications.  The code is provided *
* "AS IS", without warranty of any kind.  IBM shall not be liable    *
* for any damages arising out of your use of the sample code, even   *
* if they have been advised of the possibility of such damages       *
*                                                                    *
**********************************************************************

DDE Client Sample
DDE Server Sample

  DESCRIPTION:
    The DDE Sample contains two applications.
    They are the DDE Client and DDE Server.
    Each is located in a subdirectory.
    These two applications start DDE
    conversations with each other and can
    perform data requests to the other
    application.  In addition they can be
    hotlinked together for automatic data
    requests. Classes used include
    IDDEClientConversation,
    IDDEClientAcknowledge, IDDEClientEndEvent,
    IDDEClientHotLinkEvent,
    IDDEClientHotLinkSet, IDDEBeginEvent,
    IDDEEndEvent, IDDETopicServer,
    IDDERequestDataEvent, IDDEServerHotLinkEvent,
    and IDDEAcknowledgeEvent.

  CONCEPT/FEATURE:
    Sample program for demonstrating interprocess
    communications using Dynamic Data Exchange (DDE).

  HOW TO BUILD THE PROJECT FROM THE COMMAND LINE:
    From within the directory containing the sample, simply type:
         NMAKE

  HOW TO BUILD THE PROJECT FROM WITHIN THE WORKFRAME ENVIRONMENT:
    Refer to the standard Workframe BUILD instructions

  HOW TO RUN THE PROJECT FROM THE COMMAND LINE:
    From within the directory containing the sample, simply type
    the name of the executable:
         DDECLNT
    and
         DDESERV

  HOW TO RUN THE PROJECT FROM WITHIN THE WORKFRAME ENVIRONMENT:
    Refer to the standard Workframe RUN instructions

  SPECIAL NOTES:
    If the sample fails to execute or
    abnormally ends, you can get
    more information about the failure
    by turning on the ICLUI trace.
    This is done by setting the
    environment variable ICLUI_TRACE
    as follows:

        set ICLUI_TRACE=ON
        set ICLUI_TRACETO=STDERR

    ICLUI_TRACETO controls where
    the trace information is reported.
    With tracing turned on, ICLUI
    exception text will be written to a
    standard error file. For example:

        sample >sample.out 2>&1

    The exception data is now in the file
    'sample.out'.

  ADDITIONAL HARDWARE/SOFTWARE REQUIREMENTS:
    Dynamic Data Exchange restrictions for Win32s :
      The following functions are not supported for DDE on Win32s platforms :
      - IDDEClientConversation :: beginHotLink()
      - IDDEClientConversation :: endHotLink()
      - IDDETopicServer :: hotLinkUpdate()
      You can use these member functions to establish a DDE Hot Link but
      subsequent data requests and hot link updates may be corrupted.

  VISUALAGE FOR C++ SAMPLES INFORMATION:
    A complete listing of samples shipped with the VisualAge for C++
    product can be found in the online GUIDE TO SAMPLES.  To access
    this notebook, simply:

    -  Open the VISUALAGE FOR C++ program group in the Program
       Manager window, then
    -  Open the GUIDE TO SAMPLES notebook in the program group.

