Freigeben über


ComWrappers.GetOrRegisterObjectForComInstance Methode

Definition

Überlädt

GetOrRegisterObjectForComInstance(IntPtr, CreateObjectFlags, Object)

Ruft das aktuell registrierte verwaltete Objekt ab oder verwendet das angegebene verwaltete Objekt und registriert es.

GetOrRegisterObjectForComInstance(IntPtr, CreateObjectFlags, Object, IntPtr)

Rufen Sie das aktuell registrierte verwaltete Objekt ab, oder verwenden Sie das angegebene verwaltete Objekt, und registrieren Sie es.

GetOrRegisterObjectForComInstance(IntPtr, CreateObjectFlags, Object)

Quelle:
ComWrappers.cs
Quelle:
ComWrappers.cs
Quelle:
ComWrappers.cs

Ruft das aktuell registrierte verwaltete Objekt ab oder verwendet das angegebene verwaltete Objekt und registriert es.

public:
 System::Object ^ GetOrRegisterObjectForComInstance(IntPtr externalComObject, System::Runtime::InteropServices::CreateObjectFlags flags, System::Object ^ wrapper);
public object GetOrRegisterObjectForComInstance (IntPtr externalComObject, System.Runtime.InteropServices.CreateObjectFlags flags, object wrapper);
member this.GetOrRegisterObjectForComInstance : nativeint * System.Runtime.InteropServices.CreateObjectFlags * obj -> obj
Public Function GetOrRegisterObjectForComInstance (externalComObject As IntPtr, flags As CreateObjectFlags, wrapper As Object) As Object

Parameter

externalComObject
IntPtr

nativeint

Objekt, das zur Verwendung in der .NET-Runtime importiert werden soll.

flags
CreateObjectFlags

Flags, die verwendet werden, um das externe Objekt zu beschreiben.

wrapper
Object

Das Objekt, das als Wrapper für das externe Objekt verwendet werden soll.

Gibt zurück

Ein verwaltetes Objekt, das dem bereitgestellten externen COM-Objekt zugeordnet ist.

Ausnahmen

Die Wrapperinstanz ist bereits einem externen Objekt zugeordnet.

Hinweise

Wenn die wrapper Instanz bereits über ein zugeordnetes externes Objekt verfügt, wird eine NotSupportedException ausgelöst.

Gilt für:

GetOrRegisterObjectForComInstance(IntPtr, CreateObjectFlags, Object, IntPtr)

Quelle:
ComWrappers.cs
Quelle:
ComWrappers.cs
Quelle:
ComWrappers.cs

Rufen Sie das aktuell registrierte verwaltete Objekt ab, oder verwenden Sie das angegebene verwaltete Objekt, und registrieren Sie es.

public:
 System::Object ^ GetOrRegisterObjectForComInstance(IntPtr externalComObject, System::Runtime::InteropServices::CreateObjectFlags flags, System::Object ^ wrapper, IntPtr inner);
public object GetOrRegisterObjectForComInstance (IntPtr externalComObject, System.Runtime.InteropServices.CreateObjectFlags flags, object wrapper, IntPtr inner);
member this.GetOrRegisterObjectForComInstance : nativeint * System.Runtime.InteropServices.CreateObjectFlags * obj * nativeint -> obj
Public Function GetOrRegisterObjectForComInstance (externalComObject As IntPtr, flags As CreateObjectFlags, wrapper As Object, inner As IntPtr) As Object

Parameter

externalComObject
IntPtr

nativeint

Objekt, das zur Verwendung in der .NET-Runtime importiert werden soll.

flags
CreateObjectFlags

Flags, die verwendet werden, um das externe Objekt zu beschreiben.

wrapper
Object

Die Object , die als Wrapper für das externe Objekt verwendet werden soll.

inner
IntPtr

nativeint

Inner für COM-Aggregationsszenarien

Gibt zurück

Gibt ein verwaltetes Objekt zurück, das dem bereitgestellten externen COM-Objekt zugeordnet ist.

Hinweise

Diese Methodenüberschreibung dient zum Registrieren einer aggregierten COM-Instanz mit ihrer zugeordneten inneren Instanz. Das Innere wird freigegeben, wenn der zugeordnete Wrapper schließlich freigegeben wird. Beachten Sie, dass sie in einem Thread in einem unbekannten Apartmentzustand freigegeben wird. Wenn nicht bekannt ist, dass es sich bei der bereitgestellten inneren Instanz um eine Freethread-Instanz handelt, wird empfohlen, die innere nicht anzugeben.

Wenn die wrapper Instanz bereits über ein zugeordnetes externes Objekt verfügt, wird eine NotSupportedException ausgelöst.

Gilt für: