Compartilhar via


Método Marshal.GetIDispatchForObject (Object)

 

Dica

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Retorna uma interface IDispatch de um objeto gerenciado.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (em mscorlib.dll)

Sintaxe

[SecurityCriticalAttribute]
public static IntPtr GetIDispatchForObject(
    object o
)
public:
[SecurityCriticalAttribute]
static IntPtr GetIDispatchForObject(
    Object^ o
)
[<SecurityCriticalAttribute>]
static member GetIDispatchForObject : 
        o:Object -> nativeint
<SecurityCriticalAttribute>
Public Shared Function GetIDispatchForObject (
    o As Object
) As IntPtr

Parâmetros

  • o
    Type: System.Object

    O objeto cuja interface IDispatch é solicitada.

Valor Retornado

Type: System.IntPtr

O ponteiro IDispatch para o parâmetro o.

Exceções

Exception Condition
InvalidCastException

o não dá suporte à interface solicitada.

Comentários

No código gerenciado, raramente trabalhar diretamente com o IDispatch interface. No entanto, GetIDispatchForObject é útil ao chamar um método que expõe um parâmetro de objeto COM como uma IntPtr tipo, ou com empacotamento personalizado. Chamando um objeto com esse método faz com que a contagem de referência incrementar o ponteiro de interface antes do ponteiro será retornado. Sempre use Marshal.Release para diminuir a contagem de referência quando tiver concluído com o ponteiro.

Você também pode usar esse método em um objeto gerenciado para obter um ponteiro de interface de invólucro para o objeto. Para obter mais informações, consulte: COM Callable Wrapper.

Segurança

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Informações de Versão

.NET Framework
Disponível desde 1.1

Confira Também

Release
GetIDispatchForObjectInContext
Classe Marshal
Namespace System.Runtime.InteropServices

Retornar ao início