Auf Englisch lesen

Freigeben über


Marshal.GetIUnknownForObjectInContext(Object) Methode

Definition

Gibt eine IUnknown-Schnittstelle aus einem verwalteten Objekt zurück, wenn sich der Aufrufer im gleichen Kontext wie dieses Objekt befindet.

C#
public static IntPtr GetIUnknownForObjectInContext(object o);
C#
[System.Security.SecurityCritical]
public static IntPtr GetIUnknownForObjectInContext(object o);

Parameter

o
Object

Das Objekt, dessen IUnknown-Schnittstelle angefordert wird.

Gibt zurück

IntPtr

Der IUnknown-Zeiger für das angegebene Objekt oder null, falls sich der Aufrufer nicht in demselben Kontext wie das angegebene Objekt befindet.

Attribute

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie eine IUnknown Schnittstelle für ein verwaltetes Objekt mithilfe der GetIUnknownForObjectInContext -Methode abgerufen wird.

C#
using System;
using System.Runtime.InteropServices;

class Program
{

    static void Run()
    {

        // Create an int object
        int obj = 1;

        Console.WriteLine("Calling Marshal.GetIUnknownForObjectInContext...");

        // Get the IUnKnown pointer for the Integer object
        IntPtr pointer = Marshal.GetIUnknownForObjectInContext(obj);

        Console.WriteLine("Calling Marshal.Release...");

        // Always call Marshal.Release to decrement the reference count.
        Marshal.Release(pointer);
    }

    static void Main(string[] args)
    {
        Run();
    }
}

Hinweise

Diese Methode ist identisch mit GetIUnknownForObject der Ausnahme, dass sie zurückgibt null , wenn sich der Aufrufer nicht im selben Kontext wie das -Objekt befindet.

Gilt für:

Produkt Versionen
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

Weitere Informationen