HRESULT CreateAgent(IAgentExPtr& ptrAgent,_bstr_t Machine,COAUTHIDENTITY AuthorId)
{
HRESULT hr;
COSERVERINFO server_info;
COAUTHINFO author_info;
MULTI_QI mqi[1];
if (Machine.length()==0)
{
hr=ptrAgent.CreateInstance(__uuidof(AgentServer));
if (FAILED(hr))
_com_issue_error(hr);
}
else
{
ZeroMemory(&author_info,sizeof(author_info));
author_info.dwAuthnSvc=RPC_C_AUTHN_WINNT;
author_info.dwAuthzSvc=RPC_C_AUTHZ_NONE;
author_info.dwImpersonationLevel=RPC_C_IMP_LEVEL_IMPERSONATE;
author_info.dwCapabilities=EOAC_NONE;
author_info.pAuthIdentityData=&AuthorId;
ZeroMemory(&server_info,sizeof(server_info));
server_info.pwszName=Machine;
server_info.pAuthInfo=&author_info;
ZeroMemory(mqi,sizeof(mqi));
mqi[0].pIID=&__uuidof(IAgentEx);
mqi[0].pItf=static_cast<IUnknown*>(ptrAgent);
hr=CoCreateInstanceEx(__uuidof(AgentServer),NULL,CLSCTX_REMOTE_SERVER,&server_info,1,mqi);
if (FAILED(hr))
{
//_com_issue_error(hr);
}
else if (FAILED(mqi[0].hr)){
hr=mqi[0].hr;
ptrAgent=NULL;
}
else
            ptrAgent.Attach(reinterpret_cast<IAgentEx*>(mqi[0].pItf)); }
return hr;
}
當用dcomcnfg.exe指定microsoft agent server 2.0運行位置是"在這臺電腦上運行"時,可以通過,指定為"在下列電腦上運行",並將本機名稱輸入到里面,就無法通過提示類別沒有注冊.
是什麼原因呀.高手們.