Marshal.GetIDispatchForObject(Object) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna uma interface IDispatch de um objeto gerenciado.
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.
Retornos
nativeint
O IDispatch ponteiro para o o parâmetro.
- Atributos
Exceções
o não dá suporte à interface solicitada.
Comentários
No código gerenciado, você raramente 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 esse método faz com que a contagem de referência incremente no ponteiro da interface antes que o ponteiro seja retornado. Sempre use Marshal.Release para diminuir a contagem de referência depois de terminar com o ponteiro.
Você também pode usar esse método em um objeto gerenciado para obter um ponteiro de interface para o wrapper callable COM para o objeto. Para obter informações adicionais, consulte COM Callable Wrapper.