此方法使您能够强制RCW引用计数释放,以便它按照您的所需准确发生。
或者,如果RCW本身是一个代理,则该调用可能导致RPC_E_WRONG_THREAD的HRESULT引发COMException。
请考虑一个在其中应用程序域中的托管代码保持到表示COM组件的RCW上的方案。
为给定的IUnknown创建唯一的运行库可调用包装(RCW)对象。
NET客户端激活COM对象时,运行时就会生成一个运行时可调用包装(RCW)实例来包装COM类型。
具有包含大型类型库中的部分类型的RCW源代码可以消除部署不必要的类型的需要。
强制公共语言运行时(CLR)释放保留在运行时可调用包装(RCW)内的所有接口指针。
这张照片显示的是环形超新星残骸的一部分,名叫RCW86。
如下图所示,运行库使用从导入的COM类型库中获取的元数据来生成RCW。
公共语言运行时通过名为运行时可调用包装(RCW)的代理来公开COM对象。
或类似方法释放RCW期间或之后发生访问冲突或内存损坏。
对RCW的强制转换失败,或从RCW对COM的调用意外失败。
假设您有一个IDL档案或型别程式库档案,请决定哪些类别或介面要包含在自订RCW中。
如果在释放RCW时执行对该RCW的调用,则可能发生更严重的错误。