客户机器上的用户在服务器上有没有,并且有没权限访问。
另外,你可以在程序中指定用户名和密码。
但是服务器上设置NETWORK有权限
另外,你可以在程序中指定用户名和密码。
但是服务器上设置NETWORK有权限
解决方案 »
- 如何实现:视窗中绘制的图一部分滚动,另一个部分固定(不分割视窗)
- 线程中怎么调用非静态函数?(在线等~)
- 一个关于指针++的问题
- 为什么在Active程序中调用另一个Active控件时会Crash失败
- 用GDI+在对话框上显示图片 关于对话框上按钮的处理
- 不太清楚SetCapture()到底有什么用
- 又一个菜鸟问题,,关于在窗口中绘制矩形图形的问题~
- 文本换行
- 怎么得到局域网内的指定机器的共享目录???
- AfxMessageBox和MessageBox有什么区别
- 我用QOS申请带宽只能申请到16M多一点,再多就申请不到了,会出错,为什么,请高手指点
- 请问一下,学习分布式应用程序开发需要哪些基础?对COM需要了解多少?
我在服务器上通过用户管理把客户机器的User和passwd加到了服务器中。
可还是一样的错。 wyzegg(找工作中...) ,能帮忙吗?
memset(&cs,0,sizeof(cs));
cs.pwszName="adsl"; MULTI_QI qi[1];
memset(qi,0,sizeof(qi));
hr=CoInitialize(0);
ShowStatus(hr);
if(SUCCEEDED(hr))
{
hr=CoInitializeSecurity(NULL,-1,NULL,NULL,
RPC_C_AUTHN_LEVEL_NONE,
RPC_C_IMP_LEVEL_IMPERSONATE,NULL,EOAC_NONE,NULL);
ShowStatus(hr);
} if(SUCCEEDED(hr))
{
qi[0].pIID=&IID_ITelFeeCom;
hr=CoCreateInstanceEx(CLSID_TelFeeCom,
NULL,
CLSCTX_SERVER,
&cs,
1,
qi);
ShowStatus(hr);
if(hr==REGDB_E_CLASSNOTREG) cout<<"class not registered"<<endl;
if(hr==CLASS_E_NOAGGREGATION) cout<<"class can't be Aggregated"<<endl;
}
if(SUCCEEDED(hr))
{
float Fee;
_bstr_t Ip="84048866";
pI=(ITelFeeCom*)qi[0].pItf;
hr=pI->GetFee(Ip,&Fee);
ShowStatus(hr);
cout<<"it is "<<Fee<<endl;
pI->Release();
}
CoUninitialize();
在 General 选项卡上,确保有 Remote Computer 项,并且远程计算机名称正. 如果计算机名不正确,请选择 Location 选项卡。
确保已复选 Run application on this computer 设置。 在本节下面的对话框中,为 DCOM 服务器键入正确的计算机名。
问题是,在client端没有注册com server阿,在client计算机上
用DCOM Config 工具 (dcomcnfg.exe) 找不到这个Com server.是不是com server 在client和server端都要注册?
DCOM我还没来得及看,
呵呵,工具都一样,我想应该没问题,多试验几次:)
祝你好运!
在看看这个:
在注册表里,HKEY_LOCAL_MACHINE\SOFTWARE\CLSID\AppID...\CLSID\{xxxxx... ..... xxxx} = "your dcom name"
\LocalServer32 = "c:\yourpath\yourappname.exe"
\ProgID = "your dcom id"这是普通的com。
看看DCOM:
...\CLSID\{xxxxx... ..... xxxx} = "your dcom name"
\RemoteServerName = "192.168.5.2"你不应该先在客户端注册组件,如果你这样做了,启动时候就会去找
本地的组件,你要删除原有的注册,重新来。使用网址注册。
并且,如果服务器是98,那你先启动它
如果是动态库的话,先启动rpcss.exe