home *** CD-ROM | disk | FTP | other *** search
/ Piper's Pit BBS/FTP: ibm 0040 - 0049 / ibm0040-0049 / ibm0040.tar / ibm0040 / BCPPOWL1.ZIP / CLSRC.ZIP / ERREXIT.CPP < prev    next >
Encoding:
C/C++ Source or Header  |  1991-08-28  |  1.0 KB  |  50 lines

  1. // Borland C++ - (C) Copyright 1991 by Borland International
  2.  
  3. #if !defined( __STDLIB_H )
  4. #include <stdlib.h>
  5. #endif  // __STDLIB_H
  6.  
  7. #if !defined( __STRING_H )
  8. #include <string.h>
  9. #endif  // __STRING_H
  10.  
  11. #if !defined( __ERREXIT_H )
  12. #include <errexit.h>
  13. #endif  // __ERREXIT_H
  14.  
  15. #if defined(_Windows)
  16. #  if !defined( __WINDOWS_H )
  17. #  include <windows.h>
  18. #  endif  // __WINDOWS_H
  19. #else
  20. #  if !defined( __IOSTREAM_H )
  21. #  include <iostream.h>
  22. #  endif  // __IOSTREAM_H
  23. #endif
  24.  
  25. #if defined(_Windows)
  26.   extern char *_Cdecl _argv0;
  27.   extern HWND _hInstance;
  28. #endif
  29.  
  30. void ClasslibError( char *msg )
  31. {
  32. #if defined(_Windows)
  33.     char *progName = strrchr( _argv0, '\\' );
  34.     if( progName == NULL )
  35.         progName = _argv0;
  36.     else
  37.         progName++;     // skip backslash in front of name
  38.  
  39.     MessageBox( _hInstance, msg, progName, MB_ICONHAND | MB_SYSTEMMODAL );
  40. #else
  41.     cerr << msg;
  42. #endif
  43. }
  44.  
  45. void ClasslibErrorExit (char *msg, int code)
  46. {
  47.     ClasslibError(msg);
  48.     _exit(code);
  49. }
  50.