|
|
1.1 ! root 1: // This is a part of the Microsoft Foundation Classes C++ library. ! 2: // Copyright (C) 1992 Microsoft Corporation ! 3: // All rights reserved. ! 4: // ! 5: // This source code is only intended as a supplement to the ! 6: // Microsoft Foundation Classes Reference and Microsoft ! 7: // QuickHelp documentation provided with the library. ! 8: // See these sources for detailed information regarding the ! 9: // Microsoft Foundation Classes product. ! 10: ! 11: #include "afxwin.h" ! 12: #pragma hdrstop ! 13: ! 14: #ifdef AFX_CORE_SEG ! 15: #pragma code_seg(AFX_CORE_SEG) ! 16: #endif ! 17: ! 18: ///////////////////////////////////////////////////////////////////////////// ! 19: // Standard WinMain implementation ! 20: // Can be replaced as long as 'AfxWinInit' is called first ! 21: ! 22: #ifndef _WINDLL ! 23: extern "C" ! 24: int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, ! 25: LPSTR lpCmdLine, int nCmdShow) ! 26: { ! 27: int nReturnCode = -1; ! 28: ! 29: // AFX internal initialization ! 30: if (!AfxWinInit(hInstance, hPrevInstance, lpCmdLine, nCmdShow)) ! 31: goto InitFailure; ! 32: ! 33: // App global initializations (rare) ! 34: if (hPrevInstance == NULL && !AfxGetApp()->InitApplication()) ! 35: goto InitFailure; ! 36: ! 37: // Perform specific initializations ! 38: if (!AfxGetApp()->InitInstance()) ! 39: goto InitFailure; ! 40: ! 41: nReturnCode = AfxGetApp()->Run(); ! 42: ! 43: InitFailure: ! 44: AfxWinTerm(); ! 45: return nReturnCode; ! 46: } ! 47: #else ! 48: // _WINDLL initialization ! 49: ! 50: extern "C" ! 51: int FAR PASCAL LibMain(HINSTANCE hInstance, ! 52: WORD wDataSegment, WORD wHeapSize, LPSTR lpszCmdLine) ! 53: { ! 54: // Initialize DLL's instance(/module) not the app's ! 55: if (!AfxWinInit(hInstance, NULL, lpszCmdLine, 0)) ! 56: { ! 57: AfxWinTerm(); ! 58: return 0; // Init Failed ! 59: } ! 60: ! 61: // initialize the single instance DLL ! 62: if (!AfxGetApp()->InitInstance()) ! 63: { ! 64: AfxWinTerm(); ! 65: return 0; ! 66: } ! 67: ! 68: // nothing to run ! 69: return 1; // ok ! 70: } ! 71: ! 72: #endif //_WINDLL ! 73: ! 74: /////////////////////////////////////////////////////////////////////////////
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.