SimpleMail.cpp
上传用户:weimei12
上传日期:2022-08-11
资源大小:185k
文件大小:4k
源码类别:

Email客户端

开发平台:

Visual C++

  1. // SimpleMail.cpp : Defines the class behaviors for the application.
  2. //
  3. #include "stdafx.h"
  4. #include "SimpleMail.h"
  5. #include "MailMessage.h"
  6. #include "SmtpSendManger.h"
  7. #include "Pop3Message.h"
  8. #include "MailSaveMngr.h"
  9. #include "RecvProgressDlg.h"
  10. #include "PopReceiveManager.h"
  11. #include "MailManager.h"
  12. #include "LeftPaneView.h"
  13. #include "MainFrm.h"
  14. #include "SimpleMailDoc.h"
  15. #include "SimpleMailView.h"
  16. #ifdef _DEBUG
  17. #define new DEBUG_NEW
  18. #endif
  19. // CSimpleMailApp
  20. BEGIN_MESSAGE_MAP(CSimpleMailApp, CWinApp)
  21. ON_COMMAND(ID_APP_ABOUT, &CSimpleMailApp::OnAppAbout)
  22. // Standard file based document commands
  23. ON_COMMAND(ID_FILE_NEW, &CWinApp::OnFileNew)
  24. ON_COMMAND(ID_FILE_OPEN, &CWinApp::OnFileOpen)
  25. END_MESSAGE_MAP()
  26. // CSimpleMailApp construction
  27. CSimpleMailApp::CSimpleMailApp()
  28. {
  29. // TODO: add construction code here,
  30. // Place all significant initialization in InitInstance
  31. }
  32. // The one and only CSimpleMailApp object
  33. CSimpleMailApp theApp;
  34. // CSimpleMailApp initialization
  35. BOOL CSimpleMailApp::InitInstance()
  36. {
  37. // InitCommonControlsEx() is required on Windows XP if an application
  38. // manifest specifies use of ComCtl32.dll version 6 or later to enable
  39. // visual styles.  Otherwise, any window creation will fail.
  40. INITCOMMONCONTROLSEX InitCtrls;
  41. InitCtrls.dwSize = sizeof(InitCtrls);
  42. // Set this to include all the common control classes you want to use
  43. // in your application.
  44. InitCtrls.dwICC = ICC_WIN95_CLASSES;
  45. InitCommonControlsEx(&InitCtrls);
  46. CWinApp::InitInstance();
  47. if (!AfxSocketInit())
  48. {
  49. AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
  50. return FALSE;
  51. }
  52. // Initialize OLE libraries
  53. if (!AfxOleInit())
  54. {
  55. AfxMessageBox(IDP_OLE_INIT_FAILED);
  56. return FALSE;
  57. }
  58. AfxEnableControlContainer();
  59. AfxInitRichEdit2();
  60. // Standard initialization
  61. // If you are not using these features and wish to reduce the size
  62. // of your final executable, you should remove from the following
  63. // the specific initialization routines you do not need
  64. // Change the registry key under which our settings are stored
  65. // TODO: You should modify this string to be something appropriate
  66. // such as the name of your company or organization
  67. SetRegistryKey(_T("Local AppWizard-Generated Applications"));
  68. LoadStdProfileSettings(4);  // Load standard INI file options (including MRU)
  69. // Register the application's document templates.  Document templates
  70. //  serve as the connection between documents, frame windows and views
  71. CSingleDocTemplate* pDocTemplate;
  72. pDocTemplate = new CSingleDocTemplate(
  73. IDR_MAINFRAME,
  74. RUNTIME_CLASS(CSimpleMailDoc),
  75. RUNTIME_CLASS(CMainFrame),       // main SDI frame window
  76. RUNTIME_CLASS(CSimpleMailView));
  77. if (!pDocTemplate)
  78. return FALSE;
  79. AddDocTemplate(pDocTemplate);
  80. // Parse command line for standard shell commands, DDE, file open
  81. CCommandLineInfo cmdInfo;
  82. ParseCommandLine(cmdInfo);
  83. // Dispatch commands specified on the command line.  Will return FALSE if
  84. // app was launched with /RegServer, /Register, /Unregserver or /Unregister.
  85. if (!ProcessShellCommand(cmdInfo))
  86. return FALSE;
  87. // The one and only window has been initialized, so show and update it
  88. m_pMainWnd->ShowWindow(SW_SHOW);
  89. m_pMainWnd->UpdateWindow();
  90. // call DragAcceptFiles only if there's a suffix
  91. //  In an SDI app, this should occur after ProcessShellCommand
  92. //SkinStart(_T("SimpleMail.urf"), WINDOW_TYPE_VC, "", GTP_LOAD_FILE,NULL,NULL);
  93. return TRUE;
  94. }
  95. // CAboutDlg dialog used for App About
  96. class CAboutDlg : public CDialog
  97. {
  98. public:
  99. CAboutDlg();
  100. // Dialog Data
  101. enum { IDD = IDD_ABOUTBOX };
  102. protected:
  103. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  104. // Implementation
  105. protected:
  106. DECLARE_MESSAGE_MAP()
  107. };
  108. CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
  109. {
  110. }
  111. void CAboutDlg::DoDataExchange(CDataExchange* pDX)
  112. {
  113. CDialog::DoDataExchange(pDX);
  114. }
  115. BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
  116. END_MESSAGE_MAP()
  117. // App command to run the dialog
  118. void CSimpleMailApp::OnAppAbout()
  119. {
  120. CAboutDlg aboutDlg;
  121. aboutDlg.DoModal();
  122. }
  123. // CSimpleMailApp message handlers
  124. int CSimpleMailApp::ExitInstance()
  125. {
  126. // TODO: Add your specialized code here and/or call the base class
  127. //SkinRemove() ;
  128. return CWinApp::ExitInstance();
  129. }