#include "StdAfx.h" #include "SvrCallback.h" #include "SvrConnect.h" CSvrCallback::CSvrCallback(void) { CAutoRefPtr ipcFac; m_comMgr.CreateIpcObject((IObjRef**)&ipcFac); ipcFac->CreateIpcServer(&m_ipcSvr); } CSvrCallback::~CSvrCallback(void) { m_ipcSvr = NULL; } void CSvrCallback::OnNewConnection(IIpcHandle * pIpcHandle, IIpcConnection ** ppConn) { *ppConn = new CSvrConnect(pIpcHandle,m_pVaultDbMgr); } int CSvrCallback::GetBufSize() const { return 1024*1024; } void * CSvrCallback::GetSecurityAttr() const { return NULL; } void CSvrCallback::ReleaseSecurityAttr(void * psa) const { } void CSvrCallback::OnConnected(IIpcConnection * pConn) { //SLOG_INFO("new connection accepted,client id:"<GetIpcHandle()->GetRemoteId()); } void CSvrCallback::OnDisconnected(IIpcConnection * pConn) { //SLOG_INFO("connection disconnected,client id:" << pConn->GetIpcHandle()->GetRemoteId()); } HRESULT CSvrCallback::Init( ULONG_PTR idSvr ) { return m_ipcSvr->Init(idSvr, this); } CAutoRefPtr CSvrCallback::GetIpcSvr() { return m_ipcSvr; } void CSvrCallback::SetVaultDbMgr(CMBVaultDbMgr *pVaultDbMgr) { m_pVaultDbMgr = pVaultDbMgr; } // //void CSvrCallback::DoSayHello(IIpcConnection *pConn,ULONG_PTR data) //{ // CPageServer * _this = (CPageServer*)data; // Param_Hello param; // param.text = "hello, i'm server"; // pConn->GetIpcHandle()->CallFun(¶m); //} // //void CSvrCallback::OnHello() //{ // m_ipcSvr->EnumClient(&CPageServer::DoSayHello,(ULONG_PTR)this); //}