mfccalc.cpp
上传用户:biuytresa
上传日期:2007-12-07
资源大小:721k
文件大小:3k
源码类别:

DNA

开发平台:

Visual C++

  1. // mfccalc.cpp : Defines the class behaviors for the application.
  2. //
  3. // This is a part of the Microsoft Foundation Classes C++ library.
  4. // Copyright (C) 1992-1998 Microsoft Corporation
  5. // All rights reserved.
  6. //
  7. // This source code is only intended as a supplement to the
  8. // Microsoft Foundation Classes Reference and related
  9. // electronic documentation provided with the library.
  10. // See these sources for detailed information regarding the
  11. // Microsoft Foundation Classes product.
  12. #include "stdafx.h"
  13. #include "mfccalc.h"
  14. #include "calcdlg.h"
  15. #ifdef _DEBUG
  16. #undef THIS_FILE
  17. static char BASED_CODE THIS_FILE[] = __FILE__;
  18. #endif
  19. /////////////////////////////////////////////////////////////////////////////
  20. // CCalcApp
  21. BEGIN_MESSAGE_MAP(CCalcApp, CWinApp)
  22. //{{AFX_MSG_MAP(CCalcApp)
  23. // NOTE - the ClassWizard will add and remove mapping macros here.
  24. //    DO NOT EDIT what you see in these blocks of generated code!
  25. //}}AFX_MSG
  26. ON_COMMAND(ID_HELP, CWinApp::OnHelp)
  27. END_MESSAGE_MAP()
  28. /////////////////////////////////////////////////////////////////////////////
  29. // CCalcApp construction
  30. CCalcApp::CCalcApp()
  31. {
  32. // TODO: add construction code here,
  33. // Place all significant initialization in InitInstance
  34. }
  35. /////////////////////////////////////////////////////////////////////////////
  36. // The one and only CCalcApp object
  37. CCalcApp theApp;
  38. /////////////////////////////////////////////////////////////////////////////
  39. // CCalcApp initialization
  40. BOOL CCalcApp::InitInstance()
  41. {
  42. // Standard initialization
  43. // If you are not using these features and wish to reduce the size
  44. //  of your final executable, you should remove from the following
  45. //  the specific initialization routines you do not need.
  46. Enable3dControls();
  47. // Initialize OLE 2.0 libraries
  48. if (!AfxOleInit())
  49. {
  50. AfxMessageBox(IDP_OLE_INIT_FAILED);
  51. return FALSE;
  52. }
  53. // Parse the command line to see if launched as OLE server
  54. if (RunEmbedded() || RunAutomated())
  55. {
  56. // Register all OLE server (factories) as running.  This enables the
  57. //  OLE 2.0 libraries to create objects from other applications.
  58. COleTemplateServer::RegisterAll();
  59. // Do not continue with rest of initialization.  Wait for
  60. // client to create a CCalcDlg object instead.
  61. return TRUE;
  62. }
  63. // When a server application is launched stand-alone, it is a good idea
  64. //  to update the system registry in case it has been damaged.
  65. COleObjectFactory::UpdateRegistryAll();
  66. // create a modeless dialog as the main window of the application
  67. CCalcDlg* pDlg = new CCalcDlg;
  68. pDlg->SetVisible(TRUE);
  69. if (!pDlg->GetVisible())
  70. {
  71. AfxMessageBox(IDP_UNABLE_TO_SHOW_CALC);
  72. return FALSE;
  73. }
  74. pDlg->RegisterActive();
  75. // We are using a modeless dialog so we can translate accelerator keys
  76. // against the dialog.  In order to run the main message pump,
  77. // InitInstance must return TRUE even though this application is
  78. // a dialog-based application.
  79. return TRUE;
  80. }