ComWrappers.TryGetComInstance(Object, IntPtr) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
确定指定的托管对象是否为 ComWrappers已创建的托管包装器,如果是这样,则返回包装的非托管指针。
public:
static bool TryGetComInstance(System::Object ^ obj, [Runtime::InteropServices::Out] IntPtr % unknown);
public static bool TryGetComInstance(object obj, out IntPtr unknown);
static member TryGetComInstance : obj * nativeint -> bool
Public Shared Function TryGetComInstance (obj As Object, ByRef unknown As IntPtr) As Boolean
参数
- obj
- Object
托管包装器。
- unknown
-
IntPtr
nativeint
非托管 COM 对象。
返回
true 如果包装器解析为外部 COM 对象,则为 ;否则为 false。
注解
如果返回 COM 对象,则调用方应对对象调用 Release()。 这可以通过如下所示 Release(IntPtr)的 API 来完成。 由于此 API 需要直接与外部 COM 对象交互,因此查询Interface(),因此调用方了解 COM 对象可能具有单元相关性非常重要。 因此,如果当前线程不在正确的单元中,或者 COM 对象不是代理,则此调用可能会失败。