ComWrappers.TryGetComInstance(Object, IntPtr) Método

Definição

Determina se o objeto gerenciado especificado é um ComWrapperswrapper gerenciado criado por e, em caso afirmativo, retorna o ponteiro não gerenciado encapsulado.

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

Parâmetros

obj
Object

O wrapper gerenciado.

unknown
IntPtr

nativeint

O objeto COM não gerenciado.

Retornos

true se o wrapper foi resolvido para um objeto COM externo, caso contrário false, .

Comentários

Se um objeto COM for retornado, espera-se que o chamador chame Release() no objeto . Isso pode ser feito por meio de uma API como Release(IntPtr). Como essa API é necessária para interagir diretamente com o objeto COM externo, QueryInterface(), é importante que o chamador entenda que o objeto COM pode ter afinidade de apartment. Portanto, se o thread atual não estiver no apartment correto ou o objeto COM não for um proxy, essa chamada poderá falhar.

Aplica-se a