ÿþ// MainDlg.cpp : implementation of the CMainDlg class // ///////////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include "MainDlg.h" #include "ipcprotocolvault.h" CMainDlg::CMainDlg() : SHostWnd(_T("LAYOUT:XML_MAINWND")) { m_bLayoutInited = FALSE; m_pVaultDbMgr = new CMBVaultDbMgr(); m_pNDWebCMgr = new CMBNetDiskWebCMgr(); } CMainDlg::~CMainDlg() { if(NULL != m_pVaultDbMgr) { delete m_pVaultDbMgr; m_pVaultDbMgr = NULL; } if( NULL != m_pNDWebCMgr ) { delete m_pNDWebCMgr; m_pNDWebCMgr = NULL; } } int CMainDlg::OnCreate(LPCREATESTRUCT lpCreateStruct) { SetMsgHandled(FALSE); return 0; } BOOL CMainDlg::OnInitDialog(HWND hWnd, LPARAM lParam) { m_bLayoutInited = TRUE; ::SetWindowText(m_hWnd,_T("mbvault")); // ¾‹n ÂSpe m_pVaultDbMgr->SetParam( m_hWnd,m_pNDWebCMgr ); // ¾‹nDb¡{thV m_svrCallback.SetVaultDbMgr(m_pVaultDbMgr); // RËYS HRESULT hRes = m_svrCallback.Init((ULONG_PTR)m_hWnd); if( hRes != S_OK ) { SMessageBox(m_hWnd,_T("ipc g¡RÑ~š[1Y%ÿ"),_T("Ðc:y"),MB_OK); } // èlŒQ-NÃ_èlŒQ RegisterNotifyCenter(); // ¾‹n gáO÷S HANDLE hEvent = OpenEvent(EVENT_ALL_ACCESS, FALSE, _T("mbvaultEventInit")); SetEvent(hEvent); //////////////////////// return 0; } //TODO:ˆmo` f\ void CMainDlg::OnClose() { UnRegisterNotifyCenter(); CSimpleWnd::DestroyWindow(); } void CMainDlg::OnMaximize() { SendMessage(WM_SYSCOMMAND, SC_MAXIMIZE); } void CMainDlg::OnRestore() { SendMessage(WM_SYSCOMMAND, SC_RESTORE); } void CMainDlg::OnMinimize() { SendMessage(WM_SYSCOMMAND, SC_MINIMIZE); } void CMainDlg::OnSize(UINT nType, SOUI::CSize size) { SetMsgHandled(FALSE); if (!m_bLayoutInited) return; SWindow *pBtnMax = FindChildByName(L"btn_max"); SWindow *pBtnRestore = FindChildByName(L"btn_restore"); if(!pBtnMax || !pBtnRestore) return; if (nType == SIZE_MAXIMIZED) { pBtnRestore->SetVisible(TRUE); pBtnMax->SetVisible(FALSE); } else if (nType == SIZE_RESTORED) { pBtnRestore->SetVisible(FALSE); pBtnMax->SetVisible(TRUE); } } bool CMainDlg::RegisterNotifyCenter() { SNotifyCenter::getSingleton().addEvent(EVENTID(EventErr)); SNotifyCenter::getSingleton().addEvent(EVENTID(EventDld)); SNotifyCenter::getSingleton().addEvent(EVENTID(EventFireDld)); SNotifyCenter::getSingleton().addEvent(EVENTID(EventSyncDbMsgFinish)); SNotifyCenter::getSingleton().addEvent(EVENTID(EventFireProgress)); SNotifyCenter::getSingleton().addEvent(EVENTID(EventFireSyncDbMsgFinish)); return true; } bool CMainDlg::UnRegisterNotifyCenter() { SNotifyCenter::getSingleton().removeEvent(EventErr::EventID); SNotifyCenter::getSingleton().removeEvent(EventDld::EventID); SNotifyCenter::getSingleton().removeEvent(EventFireDld::EventID); SNotifyCenter::getSingleton().removeEvent(EventSyncDbMsgFinish::EventID); SNotifyCenter::getSingleton().removeEvent(EventFireProgress::EventID); SNotifyCenter::getSingleton().removeEvent(EventFireSyncDbMsgFinish::EventID); return true; } // TekKmՋ void CMainDlg::OnBtnSync() { CString strErrInfo,strExePath,strCfgPath; strExePath = _T("F:\\workMB\\mbc\\Debug"); strCfgPath = _T("F:\\workMB\\mbc\\Debug\\Users"); m_pVaultDbMgr->SetDbPath(strExePath,strCfgPath); m_pVaultDbMgr->SetSvrInfo( _T("115.29.185.26"),5033,_T("wah"),_T( "‹s‰[½_"),_T("1") ); m_pVaultDbMgr->DbInit(strErrInfo); m_pVaultDbMgr->SyncInit(strErrInfo); m_pVaultDbMgr->SyncDb( strErrInfo ); } void CMainDlg::OnBtnDb() { // dbRËYS CString strErrInfo,strExePath,strCfgPath,strVaultList,strResult,strCatalogList; strExePath = _T("F:\\workMB\\mbc\\Debug"); strCfgPath = _T("F:\\workMB\\mbc\\Debug\\Users"); m_pVaultDbMgr->SetDbPath(strExePath,strCfgPath); m_pVaultDbMgr->DbInit(strErrInfo); ////////////////// end dbRËYS m_pVaultDbMgr->TNXXXXXXQueryByID(_T("{B6ED8DA6-A103-448B-9C05-5FC416A8033A}"),_T("{09E203ED-164F-4F2E-9BAE-9025076E8664}"),strResult,strErrInfo); //m_pVaultDbMgr->VaultCatalogGetList( _T("{D4D90C51-5C82-4935-8716-AA6678A45AD0}"), _T("{F153CD00-0166-4262-89BF-2F76B0EF2A55}"), strCatalogList,strErrInfo ); m_pVaultDbMgr->VaultQueryCatalogObj( _T("0030"),_T("{D4D90C51-5C82-4935-8716-AA6678A45AD0}"), _T(""),strResult,strErrInfo ); //m_pVaultDbMgr->VaultGetList( strVaultList,strErrInfo ); } void CMainDlg::OnBtnStfwFireSync() { CString strErrInfo,strExePath,strCfgPath,strParam; strExePath = _T("F:\\workMB\\mbc\\Debug"); strCfgPath = _T("F:\\workMB\\mbc\\Debug\\Users"); m_pVaultDbMgr->SetDbPath(strExePath,strCfgPath); m_pVaultDbMgr->SetSvrInfo( _T("115.29.185.26"),5033,_T("wah"),_T( "‹s‰[½_"),_T("1") ); m_pVaultDbMgr->DbInit(strErrInfo); m_pVaultDbMgr->SyncInit(strErrInfo); strParam = "{\"mastercls\":{\"cls_id\":\"0031\",\"cls_name\":\"5u§c;`b\",\"key_attr\":\"CODE\",\"key_attrname\":\"ir™ex\",\"key_attrsize\":\"32\",\"attrs\":[{\"attr\":\"NAME\",\"name\":\" Tðy\",\"size\":\"128\"}]},\"composecls\":{\"orderby\":[{\"attr\":\"order\",\"desc\":\"0\"}],\"cls_id\":\"0032\",\"cls_name\":\"oöN\"},\"datacls\":{\"cls_id\":\"0030\",\"cls_name\":\"5u§coöN\"},\"groupset\":{\"group\":\"1\",\"attr\":\"TYPE\",\"attr_name\":\"oöN{|‹W\"},\"qr_code_set\":[{\"datatype\":\"1\",\"clsid\":\"0031\",\"attr\":\"CODE\"},{\"datatype\":\"3\",\"value\":\"-\"},{\"datatype\":\"4\",\"value\":\"1\"},{\"datatype\":\"2\",\"clsid\":\"0030\",\"attr\":\"SOFT_CODE\"}],\"print_style\":{\"layout\":\"0\",\"qr_position\":\"0\"},\"attr_output_set\":[{\"datatype\":\"2\",\"clsid\":\"0030\",\"attr\":\"TYPE\",\"title\":\"\"},{\"datatype\":\"2\",\"clsid\":\"0030\",\"attr\":\"SOFT_CODE\",\"title\":\"xÿ\"}]}"; //strParam = _T("{\"mastercls\":{\"cls_id\":\"0031\",\"cls_name\":\"5u§c;`b\",\"key_attr\":\"CODE\",\"key_attrname\":\"ir™ex\",\"key_attrsize\":\"32\",\"attrs\":[{\"attr\":\"NAME\",\"name\":\" Tðy\",\"size\":\"128\"}]},\"composecls\":{\"cls_id\":\"0032\",\"cls_name\":\"oöN\"},\"datacls\":{\"cls_id\":\"0030\",\"cls_name\":\"5u§coöN\"},\"groupset\":{\"group\":\"1\",\"attr\":\"TYPE\",\"attr_name\":\"oöN{|‹W\"},\"qr_code_set\":[{\"datatype\":\"1\",\"clsid\":\"0031\",\"attr\":\"CODE\"},{\"datatype\":\"3\",\"value\":\"-\"},{\"datatype\":\"4\",\"value\":\"1\"},{\"datatype\":\"2\",\"clsid\":\"0030\",\"attr\":\"SOFT_CODE\"}]}"); m_pVaultDbMgr->SetParam(strParam); m_pVaultDbMgr->FireSyncDb( strParam,strErrInfo ); /* bool bExsit = false; m_pVaultDbMgr->IsExsitDataInTNXXXXXX(bExsit,strErrInfo); CString strResult; m_pVaultDbMgr->TNXXXXXXQueryKey( _T("0"),strResult,strErrInfo ); m_pVaultDbMgr->TNXXXQueryByKeyValue( _T("{01ACC3E4-36B9-42E7-A4BE-79CACC2F64E7}"),strResult,strErrInfo );*/ } bool CMainDlg::OnEventErr(EventArgs *e) { EventErr *pEvt = (EventErr*)e; if( NULL == pEvt ) return false; CString strErrInfo = pEvt->m_strErrInfo; m_svrCallback.GetIpcSvr()->EnumClient(&CMainDlg::DoErrInfo,(ULONG_PTR)pEvt); //SMessageBox(m_hWnd,strErrInfo,_T("•ï‹"),MB_OK); return true; } bool CMainDlg::OnEventDld(EventArgs *e) { EventDld *pEvt = (EventDld*)e; if( NULL == pEvt ) return false; CString strXml = pEvt->m_strXml; CString strPath = pEvt->m_strPath; m_svrCallback.GetIpcSvr()->EnumClient(&CMainDlg::DoEventDld,(ULONG_PTR)pEvt); return true; } bool CMainDlg::OnEventFireDld(EventArgs *e) { EventFireDld *pEvt = (EventFireDld*)e; if( NULL == pEvt ) return false; CString strXml = pEvt->m_strXml; CString strPath = pEvt->m_strPath; m_svrCallback.GetIpcSvr()->EnumClient(&CMainDlg::DoEventFireDld,(ULONG_PTR)pEvt); return true; } bool CMainDlg::OnEventSyncDbMsgFinish(EventArgs *e) { EventSyncDbMsgFinish *pEvt = (EventSyncDbMsgFinish*)e; if( NULL == pEvt ) return false; CString strMsg = pEvt->m_strMsg; m_svrCallback.GetIpcSvr()->EnumClient(&CMainDlg::DoEventSyncDbMsgFinish,(ULONG_PTR)pEvt); //SMessageBox(m_hWnd,strMsg,_T("•ï‹"),MB_OK); return true; } bool CMainDlg::OnEventFireSyncDbMsgFinish(EventArgs *e) { EventFireSyncDbMsgFinish *pEvt = (EventFireSyncDbMsgFinish*)e; if( NULL == pEvt ) return false; m_svrCallback.GetIpcSvr()->EnumClient(&CMainDlg::DoEventFireSyncDbMsgFinish,(ULONG_PTR)pEvt); return true; } bool CMainDlg::OnEventFireProgress(EventArgs *e) { EventFireProgress *pEvt = (EventFireProgress*)e; if( NULL == pEvt ) return false; m_svrCallback.GetIpcSvr()->EnumClient(&CMainDlg::DoEventFireProgress,(ULONG_PTR)pEvt); return true; } // T¢[7bïzÑSˆmo` void CMainDlg::DoErrInfo(IIpcConnection *pConn,ULONG_PTR data) { EventErr *pEvt = (EventErr*)data; if( NULL == pEvt ) return ; CString strErrInfo = pEvt->m_strErrInfo; Param_ErrInfo param; param.errInfo = CT2A(strErrInfo); param.ret = true; if( NULL != pConn ) pConn->GetIpcHandle()->CallFun(&param); } // T¢[7bïzÑSˆmo` void CMainDlg::DoEventSyncDbMsgFinish(IIpcConnection *pConn,ULONG_PTR data) { EventSyncDbMsgFinish *pEvt = (EventSyncDbMsgFinish*)data; if( NULL == pEvt ) return ; CString strMsg = pEvt->m_strMsg; Param_SyncDbMsgFinish param; param.msg = CT2A(strMsg); param.ret = true; if( NULL != pConn ) pConn->GetIpcHandle()->CallFun(&param); } void CMainDlg::DoEventFireSyncDbMsgFinish(IIpcConnection *pConn,ULONG_PTR data) { EventFireSyncDbMsgFinish *pEvt = (EventFireSyncDbMsgFinish*)data; if( NULL == pEvt ) return ; CString strMsg = pEvt->m_strMsg; CString strTime = pEvt->m_strTime; Param_FireSyncDbMsgFinish param; param.msg = CT2A(strMsg); param.time = CT2A(strTime); param.ret = true; if( NULL != pConn ) pConn->GetIpcHandle()->CallFun(&param); } void CMainDlg::DoEventDld(IIpcConnection *pConn,ULONG_PTR data) { EventDld *pEvt = (EventDld*)data; if( NULL == pEvt ) return ; CString strXml = pEvt->m_strXml; CString strPath = pEvt->m_strPath; Param_VaultDld param; param.xml = CT2A(strXml); param.path = CT2A(strPath); if( NULL != pConn ) pConn->GetIpcHandle()->CallFun(&param); } void CMainDlg::DoEventFireDld(IIpcConnection *pConn,ULONG_PTR data) { EventFireDld *pEvt = (EventFireDld*)data; if( NULL == pEvt ) return ; CString strXml = pEvt->m_strXml; CString strPath = pEvt->m_strPath; Param_FireDld param; param.xml = CT2A(strXml); param.path = CT2A(strPath); if( NULL != pConn ) pConn->GetIpcHandle()->CallFun(&param); } void CMainDlg::DoEventFireProgress(IIpcConnection *pConn,ULONG_PTR data) { EventFireProgress *pEvt = (EventFireProgress*)data; if( NULL == pEvt ) return ; Param_FireProgress param; param.nRecourdCount = pEvt->m_nRecordCount; param.nCurCount = pEvt->m_nCurCount; if( NULL != pConn ) pConn->GetIpcHandle()->CallFun(&param); }