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.ObjectO 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
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