hehe,兄弟真幸福!
我受尽折磨了。
告诉你最简单的办法:在你的客户机上建立一个账户, 服务器上有相同的账户。
而且两者密码相同; :)使用这个账户在client端的机器上登陆并运行;ok!!!

解决方案 »

  1.   

    源程序如下:
    CLSID clsid;
    HRESULT hr;
    hr = CoInitializeEx(NULL,0); UpdateData(); hr = AfxGetClassIDFromString(m_progid, &clsid);
    if (FAILED(hr))
    {
    MessageBox("Could not get class id");
    return;
    }  COSERVERINFO serverinfo;
     COSERVERINFO* pServerInfo;
     DWORD dwContext;  MULTI_QI qi[2] = {{&IID_IAccount, NULL, 0}, 
    {&IID_IDisplay, NULL, 0}};
       
     if (m_nLocalRemote == 0)
     {
     pServerInfo = NULL;
     dwContext = CLSCTX_LOCAL_SERVER; 
     }
     else 
     {
    serverinfo.dwReserved1 = 0;
    serverinfo.dwReserved2 = 0;
    // serverinfo.pwszName = m_strServer.AllocSysString();
    serverinfo.pwszName = SysAllocString(L"llssh");
    serverinfo.pAuthInfo = NULL;
    pServerInfo = &serverinfo;
    dwContext = CLSCTX_REMOTE_SERVER;
     }  hr = CoCreateInstanceEx(clsid, NULL, dwContext, 
                         pServerInfo, 2, qi);

    if (SUCCEEDED(hr))
    {
    m_pAccount = (IAccount* )qi[0].pItf;
    m_pDisplay = (IDisplay* )qi[1].pItf; int nBalance = -1; m_pAccount->GetBalance(&nBalance);
    SetDlgItemInt(IDC_BALANCE, nBalance);
    }
    else
    if(hr==CO_S_NOTALLINTERFACES)
    {
    MessageBox("Not get all interfaces","Error",MB_OK);
    }
    else
    MessageBox("Could not connect to server.", "OnConnect");
    还是不行呀!!!!!
    是不是我的dcomcnfg配置不对,能否详细说一下配置情况.万分感谢!真的!!!!
      

  2.   

    可以用程序把DCOM安全属性配为最低,这样应该是可以的,在你的服务端和客户端调用接口之初(也即CoInitialize(0)之后)加入如下代码:
       // Turn security off so that everyone has access to us
        CoInitializeSecurity(NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_NONE,
            RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, NULL);
      

  3.   

    呵呵, 我的客户端用vb写的;
    只要指定ip地址(或者机器名)就可以了。我也想用vc写一个试一下;
    不过, 我想没有必要指定安全性吧。
    用默认值得了。只要两台机器有相同相同账号(相同密码)就可以了。
      

  4.   

    如:
    myserver.exe /regserver
      

  5.   

    serverinfo.pwszName = L"llssh"   //llssh为机器名也可以换成IP地址试一下.
    DCOMCFG配置步骤:
    客户方:
    运行dcomcnfg. 
    选择相应的组件属性:
    .   身份标识:交互式用户
    默认属性:
        默认身份验证   无服务器方面:
    运行dcomcnfg. 
    选择相应的组件属性:
            安全性:      
                   自定义访问权限  
                         everyone  - allow
                         accesssystem    - access
                         interactive  -allow access
                   自定义启动权限      
                         everyone  - allow lauch  
                        system  -   allowlauch               
                      interactive  -allow lauch
                   自定义配置权限      
                              creator-owner  -full      
                              everyone       -read      
                             system        -full      
                            interactive     -full
             身份标识:       
                   交互式
    默认属性:
                       默认身份验证   无这种配置是最宽限的设置,一定行的,我已经成功用过了.登陆帐号随便,不用设置为相同.
    还有组件和代理都需要在客户和服务器上注册