一个简单的dcom组件,计算两数和,客户和服务器在同一台机器上时,结果正确;将服务器放到另一台机器上后,总是返回0值,请各位大侠帮忙

sharkette 2002-09-30 12:01:11
客户端代码:
void main(void)
{
HRESULT hr;
IFirst *IFirstATL = NULL;

hr = CoInitialize(0);
if(SUCCEEDED(hr))
{
hr = CoCreateInstance( CLSID_First, NULL,
CLSCTX_LOCAL_SERVER|CLSCTX_REMOTE_SERVER,
IID_IFirst, (void**) &IFirstATL);
if(SUCCEEDED(hr))
{
long ReturnValue;
IFirstATL->AddNumbers(1, 2, &ReturnValue);
cout << "The answer for 1 + 2 is: " << ReturnValue << endl;
IFirstATL->Release();
}
else
{
cout << "CoCreateInstance Failed." << endl;
}
}
CoUninitialize();
}


服务器端代码:
STDMETHODIMP CFirst::AddNumbers(long Num1, long Num2, long *ReturnVal)
{
// TODO: Add your implementation code here
*ReturnVal = Num1 + Num2;

return S_OK;
}

谢谢!!!
...全文
56 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sharkette 2002-09-30
  • 打赏
  • 举报
回复
2000和98(装dcom98)不是都可一作为dcom服务器吗,为什么要advanced server?
sharkette 2002-09-30
  • 打赏
  • 举报
回复
2000和98(装dcom98)不是都可一作为dcom服务器吗,为什么要advanced server?
weizhengzhao 2002-09-30
  • 打赏
  • 举报
回复
服务器应该是advanced server,设成域控制器。将客户端加入该域即可!

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧