Marshal.GetIDispatchForObject(Object) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Restituisce un'interfaccia IDispatch da un oggetto gestito.
public:
static IntPtr GetIDispatchForObject(System::Object ^ o);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static IntPtr GetIDispatchForObject (object o);
public static IntPtr GetIDispatchForObject (object o);
[System.Security.SecurityCritical]
public static IntPtr GetIDispatchForObject (object o);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetIDispatchForObject : obj -> nativeint
static member GetIDispatchForObject : obj -> nativeint
[<System.Security.SecurityCritical>]
static member GetIDispatchForObject : obj -> nativeint
Public Shared Function GetIDispatchForObject (o As Object) As IntPtr
Parametri
- o
- Object
Oggetto di cui è richiesta l'interfaccia IDispatch
.
Restituisce
nativeint
Puntatore IDispatch
per il parametro o
.
- Attributi
Eccezioni
o
non supporta l'interfaccia richiesta.
Commenti
Nel codice gestito si lavora raramente direttamente con l'interfaccia IDispatch
. Tuttavia, GetIDispatchForObject è utile quando si chiama un metodo che espone un parametro di oggetto COM come IntPtr tipo o con marshalling personalizzato. Se si chiama un oggetto con questo metodo, il conteggio dei riferimenti viene incrementato sul puntatore dell'interfaccia prima che venga restituito il puntatore. Usare Marshal.Release sempre per decrementare il conteggio dei riferimenti al termine dell'operazione con il puntatore.
È anche possibile utilizzare questo metodo su un oggetto gestito per ottenere un puntatore di interfaccia al wrapper chiamabile COM per l'oggetto. Per altre informazioni, vedere COM Callable Wrapper.