Freigeben über


System.Runtime.InteropServices.Marshalling Namespace

Enthält Unterstützungstypen für quellgenerierte Interoperabilität, z. B. MarshalUsingAttribute.

Klassen

AnsiStringMarshaller

Marshaller für ANSI-Zeichenfolgen.

ArrayMarshaller<T,TUnmanagedElement>

Stellt einen Marshaller für Arrays dar.

BStrStringMarshaller

Marshaller für BSTR-Zeichenfolgen.

ComExposedClassAttribute<T>

Gibt an, dass die Instanzen eines Typs für COM verfügbar gemacht werden sollen.

ComInterfaceMarshaller<T>

Marshallt eine COM-Schnittstelle mithilfe einer StrategyBasedComWrappers Instanz.

ComObject

Basisklasse für alle vom COM-Quellcode generierten aufrufbaren Wrapper (RCWs).

ComVariantMarshaller

Marshals eine Object zu einem ComVariant.

ContiguousCollectionMarshallerAttribute

Gibt an, dass dieser Marshaller-Einstiegspunkttyp ein zusammenhängender Sammlungs-Marshaller ist.

CustomMarshallerAttribute

Gibt einen Einstiegspunkttyp zum Definieren eines Marshallers an.

ExceptionAsDefaultMarshaller<T>

Konvertiert die Ausnahme in den Standardwert des angegebenen nicht verwalteten Typs.

ExceptionAsHResultMarshaller<T>

Marshals an exception object to the value of its HResult converted to T.

ExceptionAsNaNMarshaller<T>

Konvertiert alle Ausnahmen in NaN.

ExceptionAsVoidMarshaller

Stellt einen Marshaller dar, der Ausnahmen verschluckt.

GeneratedComClassAttribute

Gibt an, dass der attributierte Typ über von der Quelle generierte COM für COM verfügbar gemacht wird und dass der Quellgenerator Code dafür generieren soll.

GeneratedComInterfaceAttribute

Gibt an, dass der attributierten Typ eine COM-Schnittstelle ist und dass der Quellgenerator Code dafür generieren soll.

IUnknownDerivedAttribute<T,TImpl>

Gibt an, dass eine Schnittstelle eine verwaltete Darstellung einer von IUnknown abgeleiteten Schnittstelle ist.

MarshalUsingAttribute

Attribut, das verwendet wird, um einen benutzerdefinierten Marshallertyp oder Größeninformationen für das Marshalling bereitzustellen.

NativeMarshallingAttribute

Attribut, das verwendet wird, um einen standardmäßigen benutzerdefinierten Marshallertyp für einen bestimmten verwalteten Typ bereitzustellen.

PointerArrayMarshaller<T,TUnmanagedElement>

Stellt einen Marshaller für ein Array von Zeigern dar.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.UnmanagedToManagedOut

Unterstützt das Marshalling von verwaltetem in nicht verwaltetem Code in einem Aufruf von nicht verwaltetem Code zu verwaltetem Code.

ReadOnlySpanMarshaller<T,TUnmanagedElement>

Unterstützt das Marshalling einer ReadOnlySpan<T> von verwaltetem Wert zu einem zusammenhängenden systemeigenen Array der nicht verwalteten Werte der Elemente.

SafeHandleMarshaller<T>

Marshallale SafeHandleabgeleitete Typen nach den Lebensdauerregeln für SafeHandle Objekte.

SpanMarshaller<T,TUnmanagedElement>

Unterstützt das Marshalling einer Span<T> von verwaltetem Wert zu einem zusammenhängenden systemeigenen Array der nicht verwalteten Werte der Elemente.

StrategyBasedComWrappers

Ein ComWrappers-basierter Typ, der anpassbare Strategieobjekte verwendet, um COM-Objektwrapper und verwaltete Objektwrapper zu implementieren, die für COM verfügbar gemacht werden.

UniqueComInterfaceMarshaller<T>

Marshals COM-Schnittstellen mithilfe einer StrategyBasedComWrappers-Instanz, die nur eindeutige systemeigene Objektwrapper (RCWs) erstellt.

Utf16StringMarshaller

Ein Marshaller für UTF-16-Zeichenfolgen.

Utf8StringMarshaller

Ein Marshaller für UTF-8-Zeichenfolgen.

Strukturen

AnsiStringMarshaller.ManagedToUnmanagedIn

Benutzerdefinierter Marshaller zum Marshallen einer verwalteten Zeichenfolge als anSI nicht verwaltete Zeichenfolge.

ArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Marshaller zum Marshallen eines Arrays von verwaltet zu nicht verwaltet.

BStrStringMarshaller.ManagedToUnmanagedIn

Benutzerdefinierter Marshaller zum Marshallen einer verwalteten Zeichenfolge als anSI nicht verwaltete Zeichenfolge.

ComVariant

Ein Typ, der einen OLE VARIANT-Wert im verwalteten Code darstellt.

ComVariantMarshaller.RefPropagate

Marshallt eine Object an eine ComVariantund verteilt den Wert der Object zurück in den vorhandenen Datenspeicher der Variante, wenn die Variante VT_BYREF Typ hat.

CustomMarshallerAttribute.GenericPlaceholder

Platzhaltertyp für einen generischen Parameter.

IIUnknownCacheStrategy.TableInfo

Enthält Informationen zu einer COM-Schnittstelle und deren tabelle mit virtuellen Methoden.

PointerArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Stellt einen Marshaller zum Marshallen eines Arrays von verwaltet zu nicht verwaltet dar.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Unterstützt das Marshalling von verwaltetem in nicht verwaltetem Code in einem Aufruf von verwaltetem Code bis hin zu nicht verwaltetem Code.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedOut

Unterstützt das Marshalling von nicht verwaltetem zu verwaltetem Code in einem Aufruf von verwaltetem Code bis hin zu nicht verwaltetem Code. Geben Sie beispielsweise Werte und out Parameter in P/Invoke-Methoden zurück.

SafeHandleMarshaller<T>.ManagedToUnmanagedIn

Marshals a SafeHandle as its underlying handle value as an in parameter or a parameter passed by value in managed-to-unmanaged scenarios like P/Invokes.

SafeHandleMarshaller<T>.ManagedToUnmanagedOut

Marshals a SafeHandle as its underlying handle value as an out parameter in managed-to-unmanaged scenarios like P/Invokes.

SafeHandleMarshaller<T>.ManagedToUnmanagedRef

Marshals a SafeHandle as its underlying handle value as a ref parameter in managed-to-unmanaged scenarios like P/Invokes.

SpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Unterstützt das Marshalling von verwaltetem in nicht verwaltetem Code in einem Aufruf von verwaltetem Code bis hin zu nicht verwaltetem Code.

Utf8StringMarshaller.ManagedToUnmanagedIn

Benutzerdefinierter Marshaller, um eine verwaltete Zeichenfolge als UTF-8 nicht verwaltete Zeichenfolge zu marshallen.

VirtualMethodTableInfo

Stellt Informationen zu einer virtuellen Methodentabelle und dem nicht verwalteten Instanzzeiger bereit.

Schnittstellen

IComExposedClass

Definiert Informationen auf Typebene für verwaltete Klassentypen, die für COM verfügbar gemacht werden.

IComExposedDetails

Definiert Details zu einem verwalteten Klassentyp, der für COM verfügbar gemacht wird.

IIUnknownCacheStrategy

Definiert eine nicht verwaltete Virtuelle Methodentabelle nachschlagen Strategie.

IIUnknownDerivedDetails

Enthält Details für die von IUnknown abgeleitete Schnittstelle.

IIUnknownInterfaceDetailsStrategy

Definiert eine Strategie zum Abrufen von Schnittstellendetails.

IIUnknownInterfaceType

Definiert Informationen auf Typebene für eine von IUnknown abgeleitete Schnittstelle.

IIUnknownStrategy

Definiert die IUnknown-Interaktionsstrategie.

IUnmanagedVirtualMethodTableProvider

Stellt Informationen zu einer tabelle mit virtuellen Methoden für eine verwaltete Schnittstelle bereit, um das Aufrufen von Methoden in der Tabelle mit virtuellen Methoden zu ermöglichen.

Enumerationen

ComInterfaceOptions

Optionen zum Generieren der COM-Schnittstelleninterop mit dem COM-Interopquellgenerator.

MarshalMode

Stellt die verschiedenen Marshallmodus dar.