void CLogWindow::OnBnClickedButton1() { // TODO: Add your control notification handler code here // 请求服务器拉取日志 CguiconsoleDlg* dlg = static_cast<CguiconsoleDlg*>(theApp.m_pMainWnd); HTREEITEM item = dlg->hasCheckApp(MESSAGELOG_TYPE); if(item == NULL) { ::AfxMessageBox(L"messagelog no select!"); return; } Mercury::Address addr = dlg->getTreeItemAddr(item); Mercury::Channel* pChannel = dlg->getNetworkInterface().findChannel(addr); if(pChannel == NULL) { ::AfxMessageBox(L"messagelog is error!"); return; } Mercury::Bundle bundle; bundle.newMessage(MessagelogInterface::registerLogWatcher); bundle << getSelLogTypes(); CString apporder; m_appIDEdit.GetWindowTextW(apporder); char* cs = KBEngine::strutil::wchar2char(apporder.GetBuffer(0)); COMPONENT_ORDER order = atoi(cs); free(cs); bundle << order; int8 count = 0; std::vector<KBEngine::COMPONENT_TYPE> vec = getSelComponents(); count = vec.size(); bundle << count; std::vector<KBEngine::COMPONENT_TYPE>::iterator iter = vec.begin(); for(; iter != vec.end(); iter++) { bundle << (*iter); } bundle.send(dlg->getNetworkInterface(), pChannel); }