我用ErrorLookUp看,这个错误是"RPC 服务器不可用。"
估计这就是加上ServerInfo.pwszName=NULL就正常的原因了

解决方案 »

  1.   

    为什么会RPC服务器不可用呢?
    用Delphi作的小测试程序可以正常连接啊!
      

  2.   

    如果要用远程组件(DCOM)的话,
    要用CoInitializeEx()和CoCreateInstanceEx()两个函数
      

  3.   

    如果是,也只能与COM有关
    因为将lpwszServer设置为空就正常了
    说明知识不支持远程COM调用
    我私下怀疑是初始化COM子系统时不正确
    工程是用Wizard产生的,不知道时不是已将DCOM初始化包含
      

  4.   

    如果是,也只能与COM有关
    因为将pwszName设置为空就正常了
    说明知识不支持远程COM调用
    我私下怀疑是初始化COM子系统时不正确
    工程是用Wizard产生的,不知道时不是已将DCOM初始化包含
    另外,我在设置pwszName后将其值用MessageBox显示出来,是对的阿CoInitializeEx()和CoCreateInstanceEx()好像没有本质区别
    既然不设置pwszName可以,那说明COM子系统已经正常初始化
      

  5.   

    察看系统日志后发现机器名不正确
    但是在程序中用AfxMessageBox显示,是正确的。
    奇怪?
      

  6.   

    当ServerInfo.pwszName=NULL或者lpwszServer=NULL时
    COM就回去到本机去找此接口,如果你本机或
    HKEY_LOCAL_MACHINE\SOFTWARE\Classes\APPID\
    {AppID_value}\RemoteServerName = server_name
    地方由此接口他就初始化,其实你可能根本就没有实例
    化你想指定的那台机器上的接口。查查DCom是否配置
    正确。或者直接使用COM+技术,哪就不用在本地配置
    DCom了。