Marshal.GetIDispatchForObject(Object) Método

Definição

Devolve uma interface IDispatch de um objeto gerido.

public:
 static IntPtr GetIDispatchForObject(System::Object ^ o);
public static IntPtr GetIDispatchForObject(object o);
[System.Security.SecurityCritical]
public static IntPtr GetIDispatchForObject(object o);
static member GetIDispatchForObject : obj -> nativeint
[<System.Security.SecurityCritical>]
static member GetIDispatchForObject : obj -> nativeint
Public Shared Function GetIDispatchForObject (o As Object) As IntPtr

Parâmetros

o
Object

O objeto cuja IDispatch interface é solicitada.

Devoluções

IntPtr

nativeint

O IDispatch ponteiro para o o parâmetro.

Atributos

Exceções

o não suporta a interface solicitada.

Observações

No código gerido, raramente se trabalha diretamente com a IDispatch interface. No entanto, GetIDispatchForObject é útil ao chamar um método que expõe um parâmetro de objeto COM como um IntPtr tipo, ou com marshaling personalizado. Chamar um objeto com este método faz com que a contagem de referências aumente no ponteiro da interface antes de este ser devolvido. Usa Marshal.Release sempre para diminuir a contagem de referências depois de terminares com o apontador.

Também pode usar este método num objeto gerido para obter um ponteiro de interface para o wrapper chamável COM para o objeto. Para informações adicionais, consulte COM Callable Wrapper.

Aplica-se a

Ver também