
 NAME: SAMPLE05

 FEATURE/CONCEPTS:
 Example of a subsystem _DLL_InitTerm function.

 TASK:
 Creating a simple subsystem DLL.

 DESCRIPTION:
 The DLL keeps a global count of the number of processes that
 access it, running totals for each process that accesses the
 subsystem, and a grand total for all processes.  There are two
 external entry points for programs accessing the subsystem.  The
 first is "DLLINCREMENT", which increments both the grand total and
 the total for the calling process by the amount passed in.  The
 second entry point is "DLLSTATS", which prints out statistics kept
 by the subsystem, including the grand total and the total for the
 current process.

 The grand total and the total for the process are stored in a
 single shared data segment of the subsystem.  Each process total
 is stored in its own data segment.

 PROJECT INFORMATION:

    LOCATION:
    \ibmcpp\samples\projects\compiler

    PROJECT NAME(s):
    Process registration Subsystem DLL
    Registration DLL

 SOURCE FILE INFORMATION:

    LOCATION:
    \ibmcpp\samples\compiler\sample05

    FILE NAME(s)   DESCRIPTION
    ------------   ------------
    MAIN05.C       C source for main function that calls each entry point in
                   the DLL, depending upon user input in response to a
                   prompt that is issued.
    MAIN05.DEF     Module definition file used to create MAIN05.EXE
    SAMPLE05.H     Prototypes for the "increment" and "stats" entry points
    BUILD.CMD      Command to invoke the WorkFrame build action to make
                   the project parts.
    CLEANUP.CMD    Erases the files that were created by the BUILD.CMD

    LOCATION:
    \ibmcpp\samples\compiler\sample05\dll

    FILE NAME(s)   DESCRIPTION
    ------------   ------------
    SAMPLE05.C     C source for the DLL initialization/termination routine
                   and for the "increment" and "stats" functions. Also,
                   there are internal functions for registering and
                   de-registering each process that uses the SAMPLE05.DLL.
    SAMPLE05.H     Prototypes for the "increment" and "stats" entry points
    SAMPLE05.DEF   Module definition file used to create SAMPLE05.DLL


 SOFTWARE/HARDWARE PREREQUISITES:
 The DLL that is created in the dll directory is moved into the sample05
 directory. Set sample05 as the current directory to run MAIN05.EXE. In order
 for the system to find the SAMPLE05.DLL, the LIBPATH setting in CONFIG.SYS
 must include the current directory (i.e., ".;" must be specified).

