08/05/18 19:05:51
すみませんDCOMについて質問させてください。
リモートPCのCOMを呼び出す簡単なコードを作成したんですが、
思ったように動いてくれませんでした。
CoCreateInstanceEx()にリモートPCのIPを渡してやるんですが
この関数から戻ってくるのに時間がかかって失敗します。
ためしにローカルのIPを渡してやると成功するんですが。
以下にソースを記載します。
どこかおかしなところがないか教えていただけないでしょうか。
::CoInitialize(NULL);
COSERVERINFO serverInfo = { 0, "192.168.1.2", NULL, 0 };
MULTI_QI qi = { &__uuidof(ITest), NULL, S_OK };
HRESULT hr = CoCreateInstanceEx(
__uuidof(Test),
NULL,
CLSCTX_REMOTE_SERVER,
&serverInfo,
1,
&qi);
ITestPtr p;
p.Attach(reinterpret_cast<ITest*>(qi.pItf));
p->func();
p = NULL;
::CoUninitialize();