FaceDetect.cpp
上传用户:sdsuchuang
上传日期:2013-01-12
资源大小:2228k
文件大小:6k
源码类别:

图形图像处理

开发平台:

Visual C++

  1. // FaceDetect.cpp : Defines the class behaviors for the application.
  2. //
  3. #include "stdafx.h"
  4. #include "FaceDetect.h"
  5. #include "MainFrm.h"
  6. #include "FaceDetectDoc.h"
  7. #include "FaceDetectView.h"
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CFaceDetectApp
  15. BEGIN_MESSAGE_MAP(CFaceDetectApp, CWinApp)
  16. //{{AFX_MSG_MAP(CFaceDetectApp)
  17. ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
  18. // ON_COMMAND(ID_BUTTON32785, OnButton32785)
  19. //}}AFX_MSG_MAP
  20. // Standard file based document commands
  21. ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
  22. ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
  23. // Standard print setup command
  24. ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
  25. END_MESSAGE_MAP()
  26. /////////////////////////////////////////////////////////////////////////////
  27. // CFaceDetectApp construction
  28. CFaceDetectApp::CFaceDetectApp()
  29. {
  30. // TODO: add construction code here,
  31. // Place all significant initialization in InitInstance
  32. }
  33. /////////////////////////////////////////////////////////////////////////////
  34. // The one and only CFaceDetectApp object
  35. CFaceDetectApp theApp;
  36. /////////////////////////////////////////////////////////////////////////////
  37. // CFaceDetectApp initialization
  38. BOOL CFaceDetectApp::InitInstance()
  39. {
  40. AfxEnableControlContainer();
  41. // Standard initialization
  42. // If you are not using these features and wish to reduce the size
  43. //  of your final executable, you should remove from the following
  44. //  the specific initialization routines you do not need.
  45. #ifdef _AFXDLL
  46. Enable3dControls(); // Call this when using MFC in a shared DLL
  47. #else
  48. Enable3dControlsStatic(); // Call this when linking to MFC statically
  49. #endif
  50. // Change the registry key under which our settings are stored.
  51. // TODO: You should modify this string to be something appropriate
  52. // such as the name of your company or organization.
  53. SetRegistryKey(_T("Local AppWizard-Generated Applications"));
  54. LoadStdProfileSettings();  // Load standard INI file options (including MRU)
  55. // Register the application's document templates.  Document templates
  56. //  serve as the connection between documents, frame windows and views.
  57. //数据库连接
  58. if(FAILED(::CoInitialize(NULL)))
  59. {
  60. AfxMessageBox("ADO Init failed");
  61. return false;
  62. }
  63. try
  64. {
  65. //SQL Server 2000 的DSN连接 要设置DSN为mydata
  66. // ADOConn.CreateInstance(__uuidof(Connection));
  67. // ADOConn->Open("DSN=STKDATA;Provider=MSDASQL","","",adConnectUnspecified);
  68. //Access 2000 的连接,不需要配置DSN
  69. ADOConn.CreateInstance("ADODB.Connection");///创建Connection对象
  70. ADOConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=CParameter.mdb;Persist Security Info=False","","",adModeUnknown);///连接数据库
  71.         //ADOConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Message.mdb;Persist Security Info=False","","",adModeUnknown);///连接数据库
  72. }
  73. catch(_com_error &e)
  74. {
  75. CString err;
  76. err.Format("%s",(char *)(e.Description()));
  77. AfxMessageBox(err);
  78. }
  79. catch(...)
  80. {
  81. AfxMessageBox("Unknown Eoor...");
  82. }
  83. m_pADOSet.CreateInstance(__uuidof(Recordset));
  84. //数据库连接结束
  85. CSingleDocTemplate* pDocTemplate;
  86. pDocTemplate = new CSingleDocTemplate(
  87. IDR_MAINFRAME,
  88. RUNTIME_CLASS(CFaceDetectDoc),
  89. RUNTIME_CLASS(CMainFrame),       // main SDI frame window
  90. RUNTIME_CLASS(CFaceDetectView));
  91. AddDocTemplate(pDocTemplate);
  92. // Parse command line for standard shell commands, DDE, file open
  93. CCommandLineInfo cmdInfo;
  94. ParseCommandLine(cmdInfo);
  95. // Dispatch commands specified on the command line
  96. if (!ProcessShellCommand(cmdInfo))
  97. return FALSE;
  98. // The one and only window has been initialized, so show and update it.
  99. m_pMainWnd->ShowWindow(SW_SHOW);
  100. m_pMainWnd->UpdateWindow();
  101. /*
  102.    Menu = GetMenu();
  103.    if (!Caps.fHasDlgVideoSource)
  104.       Menu->EnableMenuItem(ID_SETTINGS_VIDEOSOURCE,MF_GRAYED);
  105.    if (!Caps.fHasDlgVideoFormat)
  106.       Menu->EnableMenuItem(ID_SETTINGS_VIDEOFORMAT,MF_GRAYED);
  107.    if (!Caps.fHasDlgVideoDisplay)
  108.       Menu->EnableMenuItem(ID_SETTINGS_VIDEODISPLAY,MF_GRAYED);
  109. */
  110.    
  111. ///////////////////////////////////////////////////////////////////////////////
  112. return TRUE;
  113. }
  114. /////////////////////////////////////////////////////////////////////////////
  115. // CAboutDlg dialog used for App About
  116. class CAboutDlg : public CDialog
  117. {
  118. public:
  119. CAboutDlg();
  120. // Dialog Data
  121. //{{AFX_DATA(CAboutDlg)
  122. enum { IDD = IDD_ABOUTBOX };
  123. //}}AFX_DATA
  124. // ClassWizard generated virtual function overrides
  125. //{{AFX_VIRTUAL(CAboutDlg)
  126. protected:
  127. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  128. //}}AFX_VIRTUAL
  129. // Implementation
  130. protected:
  131. //{{AFX_MSG(CAboutDlg)
  132. // No message handlers
  133. //}}AFX_MSG
  134. DECLARE_MESSAGE_MAP()
  135. };
  136. CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
  137. {
  138. //{{AFX_DATA_INIT(CAboutDlg)
  139. //}}AFX_DATA_INIT
  140. }
  141. void CAboutDlg::DoDataExchange(CDataExchange* pDX)
  142. {
  143. CDialog::DoDataExchange(pDX);
  144. //{{AFX_DATA_MAP(CAboutDlg)
  145. //}}AFX_DATA_MAP
  146. }
  147. BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
  148. //{{AFX_MSG_MAP(CAboutDlg)
  149. // No message handlers
  150. //}}AFX_MSG_MAP
  151. END_MESSAGE_MAP()
  152. // App command to run the dialog
  153. void CFaceDetectApp::OnAppAbout()
  154. {
  155. CAboutDlg aboutDlg;
  156. aboutDlg.DoModal();
  157. }
  158. /////////////////////////////////////////////////////////////////////////////
  159. // CFaceDetectApp message handlers
  160. BOOL CFaceDetectApp::ADOExecute(_RecordsetPtr &ADOSet, CString strSQL)
  161. {
  162. if(ADOSet->State==adStateOpen)
  163. ADOSet->Close();
  164. try
  165. {
  166. if(ADOConn==NULL)
  167. ADOConn.CreateInstance (__uuidof(Connection));//创建连接实例
  168. variant_t vNULL;//变量体
  169. vNULL.vt=VT_ERROR;
  170. vNULL.scode=DISP_E_PARAMNOTFOUND;//
  171. ADOSet->PutRefActiveConnection (this->ADOConn );//创建与数据库对应的数据集
  172. ADOSet->Open((variant_t)strSQL, vNULL, adOpenStatic, adLockUnspecified, adCmdText);
  173. return true;
  174. }
  175. catch(_com_error &e)//获取系统错误
  176. {
  177. CString err;
  178. err.Format("ADO Error: %s",(char *)e.Description());
  179. AfxMessageBox(err);
  180. return false;
  181. }
  182. }
  183. void CFaceDetectApp::OnButton32785() 
  184. {
  185. // TODO: Add your command handler code here
  186.     //
  187. }
  188. int CFaceDetectApp::study()
  189. {
  190.    STUDY_1 dlg;
  191.    int nResponse=dlg.DoModal();
  192.    //if(nResponse==IDOK)
  193.    return 1;
  194.  // else 
  195.  // return 0;
  196. }
  197. int CFaceDetectApp::Message()
  198. {
  199. MessageName dlgname;
  200.     int GetName=dlgname.DoModal();
  201. //if(GetName==IDOK)
  202. return 1;
  203. // else 
  204. // return 0;
  205. }