关于Dcom数据库的三层原理片断

发表于:2007-06-30来源:作者:点击数: 标签:
使用ADO数据技术. 编写服务器端数据处理COM组件,将其配置成DCOM服务. 在客户端编写客户程序,向DCOM服务器组件要求获取,修改数据. 直接传送 SQL 语句,让服务端执行.要传回的数据直接从_RecordsetPtr无连接传回, 如: STDMETHODIMP CDataServer::FetchRecordse
使用ADO数据技术.

编写服务器端数据处理COM组件,将其配置成DCOM服务.

在客户端编写客户程序,向DCOM服务器组件要求获取,修改数据.
直接传送SQL语句,让服务端执行.要传回的数据直接从_RecordsetPtr无连接传回,
如:
STDMETHODIMP CDataServer::FetchRecordsetData(BSTR bstrQuerySQL, IDispatch **pResultRecordSet)
{
if(m_pMainConnection == NULL)
return E_POINTER;

try
{
_RecordsetPtr pRecordset;
pRecordset.CreateInstance (__uuidof(Recordset));
pRecordset->Open (bstrQuerySQL, (IDispatch*)m_pMainConnection, adOpenStatic, adLockOptimistic, adCmdText);
pRecordset->putref_ActiveConnection (NULL);
*pResultRecordSet = (IDispatch*)pRecordset.Detach ();
}
catch(_com_error e)
{
return e.Error ();
}

return S_OK;
//OK
}

编码很简单,但DCOM的配置相当复杂,特别是跨域时涉及安全性问题.



原文转自:http://www.ltesting.net