修改后的MIS.cpp 可以实现增加的登录窗口 和每日一帖

来源:互联网 发布:沈飞与空军恩怨 知乎 编辑:程序博客网 时间:2024/06/06 14:18

// MIS.cpp : Defines the class behaviors for the application.
//

#include "stdafx.h"
#include "MIS.h"
#include "Logsys.h"
#include "MainFrm.h"
#include "MISDoc.h"
#include "MISView.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMISApp

BEGIN_MESSAGE_MAP(CMISApp, CWinApp)
 ON_COMMAND(CG_IDS_TIPOFTHEDAY, ShowTipOfTheDay)
 //{{AFX_MSG_MAP(CMISApp)
 ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
  // NOTE - the ClassWizard will add and remove mapping macros here.
  //    DO NOT EDIT what you see in these blocks of generated code!
 //}}AFX_MSG_MAP
 // Standard file based document commands
 ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
 ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
 // Standard print setup command
 ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMISApp construction

CMISApp::CMISApp()
{
 // TODO: add construction code here,
 // Place all significant initialization in InitInstance
}

/////////////////////////////////////////////////////////////////////////////
// The one and only CMISApp object

CMISApp theApp;

// This identifier was generated to be statistically unique for your app.
// You may change it if you prefer to choose a specific identifier.

// {3738E9FC-6210-4004-8884-68B46FAABE7C}
static const CLSID clsid =
{ 0x3738e9fc, 0x6210, 0x4004, { 0x88, 0x84, 0x68, 0xb4, 0x6f, 0xaa, 0xbe, 0x7c } };

/////////////////////////////////////////////////////////////////////////////
// CMISApp initialization

BOOL CMISApp::InitInstance()
{
 // Initialize OLE libraries
 if (!AfxOleInit())
 {
  AfxMessageBox(IDP_OLE_INIT_FAILED);
  return FALSE;
 }

 AfxEnableControlContainer();

 // Standard initialization
 // If you are not using these features and wish to reduce the size
 //  of your final executable, you should remove from the following
 //  the specific initialization routines you do not need.

#ifdef _AFXDLL
 Enable3dControls();   // Call this when using MFC in a shared DLL
#else
 Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif

 // Change the registry key under which our settings are stored.
 // TODO: You should modify this string to be something appropriate
 // such as the name of your company or organization.
 SetRegistryKey(_T("Local AppWizard-Generated Applications"));

 LoadStdProfileSettings();  // Load standard INI file options (including MRU)

 // Register the application's document templates.  Document templates
 //  serve as the connection between documents, frame windows and views.
CLogsys TestDlg;

if(TestDlg.DoModal()==IDOK) // 单击Ok后就开始初始化程序实例

{
 CSingleDocTemplate* pDocTemplate;
 pDocTemplate = new CSingleDocTemplate(
  IDR_MAINFRAME,
  RUNTIME_CLASS(CMISDoc),
  RUNTIME_CLASS(CMainFrame),       // main SDI frame window
  RUNTIME_CLASS(CMISView));
 AddDocTemplate(pDocTemplate);

 // Connect the COleTemplateServer to the document template.
 //  The COleTemplateServer creates new documents on behalf
 //  of requesting OLE containers by using information
 //  specified in the document template.
 // 注释掉m_server.ConnectTemplate(clsid, pDocTemplate, TRUE);
  // Note: SDI applications register server objects only if /Embedding
  //   or /Automation is present on the command line.

 // Parse command line for standard shell commands, DDE, file open
 CCommandLineInfo cmdInfo;
 ParseCommandLine(cmdInfo);

 // Check to see if launched as OLE server
 /*if  注释 (cmdInfo.m_bRunEmbedded || cmdInfo.m_bRunAutomated)
 {
  // Register all OLE server (factories) as running.  This enables the
  //  OLE libraries to create objects from other applications.
  COleTemplateServer::RegisterAll();

  // Application was run with /Embedding or /Automation.  Don't show the
  //  main window in this case.
  return TRUE;
 }

 // When a server application is launched stand-alone, it is a good idea
 //  to update the system registry in case it has been damaged.
 m_server.UpdateRegistry(OAT_DISPATCH_OBJECT);
 COleObjectFactory::UpdateRegistryAll();
 */
 // Dispatch commands specified on the command line
 if (!ProcessShellCommand(cmdInfo))
  return FALSE;

 // The one and only window has been initialized, so show and update it.
 m_pMainWnd->ShowWindow(SW_SHOW);
 m_pMainWnd->UpdateWindow();
 ShowTipAtStartup();
 return TRUE;
}
else  // 假如单击了CANCEL按钮就直接退出

return FALSE;

 // CG: This line inserted by 'Tip of the Day' component.
 

}


/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
 CAboutDlg();

// Dialog Data
 //{{AFX_DATA(CAboutDlg)
 enum { IDD = IDD_ABOUTBOX };
 //}}AFX_DATA

 // ClassWizard generated virtual function overrides
 //{{AFX_VIRTUAL(CAboutDlg)
 protected:
 virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
 //}}AFX_VIRTUAL

// Implementation
protected:
 //{{AFX_MSG(CAboutDlg)
  // No message handlers
 //}}AFX_MSG
 DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
 //{{AFX_DATA_INIT(CAboutDlg)
 //}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);
 //{{AFX_DATA_MAP(CAboutDlg)
 //}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
 //{{AFX_MSG_MAP(CAboutDlg)
  // No message handlers
 //}}AFX_MSG_MAP
END_MESSAGE_MAP()

// App command to run the dialog
void CMISApp::OnAppAbout()
{
 CAboutDlg aboutDlg;
 aboutDlg.DoModal();
}
/////////////////////////////////////////////////////////////////////////////
// CMISApp message handlers


void CMISApp::ShowTipAtStartup(void)
{
 // CG: This function added by 'Tip of the Day' component.

 CCommandLineInfo cmdInfo;
 ParseCommandLine(cmdInfo);
 if (cmdInfo.m_bShowSplash)
 {
  CTipDlg dlg;
  if (dlg.m_bStartup)
   dlg.DoModal();
 }

}

void CMISApp::ShowTipOfTheDay(void)
{
 // CG: This function added by 'Tip of the Day' component.

 CTipDlg dlg;
 dlg.DoModal();

}

原创粉丝点击