Com 列集的奇怪问题

来源:互联网  时间:2016/8/24 21:23:38

关于网友提出的“ Com 列集的奇怪问题”问题疑问,本网通过在网上对“ Com 列集的奇怪问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: Com 列集的奇怪问题
描述:

组件A 的方法f大致如下:
STDMETHODIMP A::f(/*[out]*/long * ret)
{
  ....
  CoMarshalInterThreadInterfaceInStream(...);
  .....
  *ret = 123;
}
客户端:
long ret = 2;
pInterface->f(&ret);
当CoMarshalInterThreadInterfaceInStream执行成功的时候,在客户端得到的ret是123;
当CoMarshalInterThreadInterfaceInStream执行失败的时候,在客户端得到的ret竟然是0;
可能的原因都有什么呢?
前提:在使用代理的情况下,例如:组件A(free),客户端(STA)


解决方案1:

把f的整个实现贴出来有助于解决问题。

解决方案2:

引用 1 楼 dirdirdir3 的回复:
出现了exception......

同意,根本就没执行到 *ret = 123; 解决方案3:

出现了exception......

上一篇ATLCOM数字签名问题
下一篇再问VC,VB混合编程,Dll的数组指针传值问题
明星图片
相关文章
《 Com 列集的奇怪问题》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)