www.gusucode.com > 一个相对很完善的数据挖掘系统源码程序 > 一个相对很完善的数据挖掘系统源码程序/Discover/Discover.cpp
// Discover.cpp : Defines the class behaviors for the application. // #include "stdafx.h" #include "Discover.h" #include "MainFrm.h" #include "DiscoverDoc.h" #include "ColleDoc.h" #include "DiscoverView.h" #include "TreeViewDMfunction.h" //#include"DummyEdit.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CDiscoverApp BEGIN_MESSAGE_MAP(CDiscoverApp, CWinApp) //{{AFX_MSG_MAP(CDiscoverApp) 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() ///////////////////////////////////////////////////////////////////////////// // CDiscoverApp construction CDiscoverApp::CDiscoverApp() { // TODO: add construction code here, // Place all significant initialization in InitInstance } ///////////////////////////////////////////////////////////////////////////// // The one and only CDiscoverApp object CDiscoverApp theApp; ///////////////////////////////////////////////////////////////////////////// // CDiscoverApp initialization BOOL CDiscoverApp::InitInstance() { 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. CSingleDocTemplate* pDocTemplate; // pDocTemplate = new CSingleDocTemplate( // IDR_MAINFRAME, // RUNTIME_CLASS(CDiscoverDoc), // RUNTIME_CLASS(CMainFrame), // main SDI frame window // RUNTIME_CLASS(CDiscoverView)); // AddDocTemplate(pDocTemplate); pDocTemplate = new CSingleDocTemplate( IDR_DISCOVTYPE,//IDR_MAINFRAME, RUNTIME_CLASS(CCollectDoc), RUNTIME_CLASS(CMainFrame), // main SDI frame window RUNTIME_CLASS(CTreeViewDMfunction)); AddDocTemplate(pDocTemplate); // CMainFrame* pMainFrame = new CMainFrame; // if (!pMainFrame->LoadFrame(IDR_MAINFRAME)) // return FALSE; // m_pMainWnd = pMainFrame; // Parse command line for standard shell commands, DDE, file open CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); // 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_SHOWMAXIMIZED); m_pMainWnd->UpdateWindow(); AfxOleInit();//使用AfxOleInit()来初始化COM库,准备使用ADO操作数据库 m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象 m_pRecordset.CreateInstance("ADODB.Recordset"); return TRUE; } ///////////////////////////////////////////////////////////////////////////// // 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 CDiscoverApp::OnAppAbout() { CAboutDlg aboutDlg; aboutDlg.DoModal(); } ///////////////////////////////////////////////////////////////////////////// // CDiscoverApp message handlers int CDiscoverApp::ExitInstance() { // if (m_pRecordset->State==adStateOpen) // { // m_pRecordset->Close(); // m_pRecordset->Release(); // } // if (m_pConnection->State==adStateOpen) // { // m_pConnection->Close(); // m_pConnection->Release(); // } m_pRecordset.Release(); m_pConnection.Release(); // POSITION DCPpos=AfxGetApp()->GetFirstDocTemplatePosition( ) ;//获得第一个文档模板位置 // CDocTemplate *pDCP=AfxGetApp()->GetNextDocTemplate(DCPpos ) ;//获得第一个文档模板的指针 // POSITION DOCpos=pDCP->GetFirstDocPosition( ) ; //获得第一个文档模板指向的第一个文档的位置 // CCollectDoc *m_pDoc=(CCollectDoc *)pDCP->GetNextDoc(DOCpos) ;//获得第一个文档模板指向的第一个文档的指针 // m_pDoc->m_AprioristructList1.RemoveAll();//delete pAprioriStruct // m_pDoc->m_AprioristructList2.RemoveAll(); // m_pDoc->m_AprioristructList3.RemoveAll(); return CWinApp::ExitInstance(); }