Compartir a través de


Método Marshal.GetIDispatchForObject (Object)

 

Publicado: octubre de 2016

Devuelve una interfaz IDispatch de un objeto administrado.

Espacio de nombres:   System.Runtime.InteropServices
Ensamblado:  mscorlib (en mscorlib.dll)

Sintaxis

[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

    Objeto cuya interfaz IDispatch se solicita.

Valor devuelto

Type: System.IntPtr

Puntero IDispatch para el parámetro o.

Excepciones

Exception Condition
InvalidCastException

o no se admite la interfaz solicitada.

Comentarios

En código administrado, rara vez se trabaja directamente con el IDispatch interfaz. Sin embargo, GetIDispatchForObject es útil cuando se llama a un método que expone un parámetro de objeto COM como un IntPtr tipo, o con el cálculo de referencias personalizado. Llamar a un objeto con este método hace que el recuento de referencia aumenta en el puntero de interfaz antes de que se devuelva el puntero. Utilice siempre Marshal.Release para disminuir el recuento de referencias cuando haya terminado con el puntero.

También puede utilizar este método en un objeto administrado para obtener un puntero de interfaz al contenedor COM invocable del objeto. Para obtener información adicional, vea COM Callable Wrapper.

Seguridad

SecurityCriticalAttribute

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

Información de versión

.NET Framework
Disponible desde 1.1

Ver también

Release
GetIDispatchForObjectInContext
Clase Marshal
Espacio de nombres System.Runtime.InteropServices

Volver al principio