home *** CD-ROM | disk | FTP | other *** search
- @echo off
- cls
- ECHO ***************************************************************************
- ECHO * SAMPLE PROGRAM: SAMPLE03 - dynamically linked *
- ECHO * *
- ECHO * COPYRIGHT: *
- ECHO * ---------- *
- ECHO * Copyright (C) International Business Machines Corp., 1991, 1992. *
- ECHO * *
- ECHO * STATUS: VERSION 1, RELEASE 0, MODIFICATION 0 *
- ECHO * *
- ECHO * DISCLAIMER OF WARRANTIES: *
- ECHO * ------------------------- *
- ECHO * The following [enclosed] code is sample code created by IBM *
- ECHO * Corporation. This sample code is not part of any standard IBM product *
- ECHO * and is provided to you solely for the purpose of assisting you in the *
- ECHO * development of your applications. The code is provided "AS IS", *
- ECHO * without warranty of any kind. IBM shall not be liable for any damages *
- ECHO * arising out of your use of the sample code, even if they have been *
- ECHO * advised of the possibility of such damages. *
- ECHO * *
- ECHO * ----------------------------------------------------------------------- *
- ECHO * *
- ECHO * Routine to demonstrate a global DLL using shared memory. *
- ECHO * *
- ECHO * File list: *
- ECHO * *
- ECHO * SAMPLE03.C - source code to create the DLL *
- ECHO * INITTERM.C - source code for DLL initialization/termination *
- ECHO * SAMPLE03.H - header file for this sample *
- ECHO * SAMPLE03.DEF - module definition file for the DLL *
- ECHO * MAIN03.C - source code to create the EXE *
- ECHO * MAIN03.DEF - module definition file for the EXE *
- ECHO * BUILD03D.CMD - command file to build SAMPLE03 dynamically linked *
- ECHO ***************************************************************************
- PAUSE
- SETLOCAL
- ECHO ************************************************************************
- ECHO Call CSETENV.CMD to set up the IBM C Set/2 environment
- ECHO ************************************************************************
- :ENV
- IF NOT EXIST ..\..\BIN\CSETENV.CMD GOTO ERROR1
- CALL ..\..\BIN\CSETENV.CMD
- GOTO CHECK
- :ERROR1
- ECHO ERROR: Failed to locate CSETENV.CMD command file
- ECHO REMEDY: Verify that CSETENV.CMD is in the \BIN directory and try again
- PAUSE
- GOTO END
- :CHECK
- ECHO ************************************************************************
- ECHO Check that all required files exist
- ECHO ************************************************************************
- IF NOT EXIST ..\..\LIB\DDE4SBSI.LIB GOTO ERROR2
- IF NOT EXIST ..\..\DLL\DDE4SBS.DLL GOTO ERROR2
- GOTO COMPINIT
- :ERROR2
- ECHO ERROR: One or more libraries are missing
- ECHO REMEDY: Make sure that you have installed the correct libraries
- ECHO and try again
- PAUSE
- GOTO END
- :COMPINIT
- ECHO ***************************************************************************
- ECHO * Compiling DLL Initialization/Termination source *
- ECHO * *
- ECHO * icc /c /O+ /Ge- /Gd+ INITTERM.C *
- ECHO * *
- ECHO * compiler options: *
- ECHO * *
- ECHO * /c : do not invoke the linker *
- ECHO * /O+ : generate optimized code *
- ECHO * /Ge- : build a .DLL file *
- ECHO * /Gd+ : dynamically link the C runtime functions *
- ECHO * *
- ECHO ***************************************************************************
- icc /c /O+ /Ge- /Gd+ INITTERM.C
- IF NOT ERRORLEVEL 1 GOTO BUILDDLL
- ECHO ERROR: Failed to compile INITTERM.C
- ECHO REMEDY: Make sure that you have installed the correct components
- ECHO and try again
- PAUSE
- GOTO END
- :BUILDDLL
- ECHO ***************************************************************************
- ECHO * Building DLL *
- ECHO * *
- ECHO * icc /O+ /Ge- /Gd+ /B"/NOE" SAMPLE03.C INITTERM SAMPLE03.DEF *
- ECHO * *
- ECHO * compiler options: *
- ECHO * *
- ECHO * /c : do not invoke the linker *
- ECHO * /O+ : generate optimized code *
- ECHO * /Ge- : build a .DLL file *
- ECHO * /Gd+ : dynamically link the C runtime functions *
- ECHO * /B"/NOE" : pass /NOE option to linker *
- ECHO * *
- ECHO ***************************************************************************
- icc /O+ /Ge- /Gd+ /B"/NOE" SAMPLE03.C INITTERM SAMPLE03.DEF
- IF NOT ERRORLEVEL 1 GOTO BUILDEXE
- ECHO ERROR: Failed to compile and/or link SAMPLE03.C
- ECHO REMEDY: Make sure that you have installed the correct components
- ECHO and try again
- PAUSE
- GOTO END
- :BUILDEXE
- ECHO ***************************************************************************
- ECHO * Building EXE *
- ECHO * *
- ECHO * icc /O+ /Gd+ MAIN03.C MAIN03.DEF *
- ECHO * *
- ECHO * compiler options: *
- ECHO * *
- ECHO * /O+ : generate optimized code *
- ECHO * /Gd+ : dynamically link the C runtime functions *
- ECHO * *
- ECHO ***************************************************************************
- icc /O+ /Gd+ MAIN03.C MAIN03.DEF
- IF NOT ERRORLEVEL 1 GOTO RUN
- ECHO ERROR: Failed to compile and/or link MAIN03.C
- ECHO REMEDY: Make sure that you have installed the correct components
- ECHO and try again
- PAUSE
- GOTO END
- :RUN
- COPY SAMPLE03.DLL ..\..\DLL > NUL:
- ECHO ************************************************************************
- ECHO Running MAIN03.EXE
- ECHO ************************************************************************
- MAIN03
- PAUSE
- ECHO ************************************************************************
- REM Clean up files and environment
- ECHO ************************************************************************
- :CLEANUP
- IF EXIST ..\..\DLL\SAMPLE03.DLL ERASE ..\..\DLL\SAMPLE03.DLL
- IF EXIST SAMPLE03.DLL ERASE SAMPLE03.DLL
- IF EXIST INITTERM.OBJ ERASE INITTERM.OBJ
- IF EXIST SAMPLE03.OBJ ERASE SAMPLE03.OBJ
- IF EXIST MAIN03.EXE ERASE MAIN03.EXE
- IF EXIST MAIN03.OBJ ERASE MAIN03.OBJ
- :END
- endlocal