System.Runtime.InteropServices.Marshalling Namespace

Enthält Unterstützungstypen für von der Quelle generierte Interop, z MarshalUsingAttribute. B. .

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 eines StrategyBasedComWrappers instance.

ComObject

Basisklasse für alle com source generated runtime callable wrappers (RCWs).

ComVariantMarshaller

Enthält Unterstützungstypen für von der Quelle generierte Interop, z MarshalUsingAttribute. B. .

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>

Marshallt ein Ausnahmeobjekt mit dem Wert des HResult in Tkonvertierten .

ExceptionAsNaNMarshaller<T>

Konvertiert alle Ausnahmen in NaN.

ExceptionAsVoidMarshaller

Stellt einen Marshaller dar, der Ausnahmen schluckt.

GeneratedComClassAttribute

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

GeneratedComInterfaceAttribute

Gibt an, dass der attributierte Typ eine COM-Schnittstelle ist und 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 zum Bereitstellen eines benutzerdefinierten Marshallertyps oder einer benutzerdefinierten Größe für das Marshalling verwendet wird.

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 Marshallen von verwaltetem in nicht verwalteten Code in einem Aufruf von nicht verwaltetem Code in verwalteten Code.

ReadOnlySpanMarshaller<T,TUnmanagedElement>

Unterstützt das Marshallen von einem ReadOnlySpan<T> verwalteten Wert in ein zusammenhängendes natives Array der nicht verwalteten Werte der Elemente.

SafeHandleMarshaller<T>

Marshallen SafeHandleabgeleitete Typen, die den Lebensdauerregeln für SafeHandle Objekte folgen.

SpanMarshaller<T,TUnmanagedElement>

Unterstützt das Marshallen von einem Span<T> verwalteten Wert in ein zusammenhängendes natives 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>

Marshallt COM-Schnittstellen mithilfe eines StrategyBasedComWrappers-instance, der nur eindeutige native 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 nicht verwaltete ANSI-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 nicht verwaltete ANSI-Zeichenfolge.

ComVariant

Enthält Unterstützungstypen für von der Quelle generierte Interop, z MarshalUsingAttribute. B. .

ComVariantMarshaller.RefPropagate

Enthält Unterstützungstypen für von der Quelle generierte Interop, z MarshalUsingAttribute. B. .

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 Marshallen von verwaltetem in nicht verwalteten Code in einem Aufruf von verwaltetem Code in nicht verwalteten Code.

SafeHandleMarshaller<T>.ManagedToUnmanagedIn

Marshallt einen SafeHandle als zugrunde liegenden Handle-Wert als in Parameter oder Parameter, der als Wert in verwalteten zu nicht verwalteten Szenarien wie P/Invokes übergeben wird.

SafeHandleMarshaller<T>.ManagedToUnmanagedOut

Marshallt ein als SafeHandle zugrunde liegenden Handlewert als out Parameter in verwalteten zu nicht verwalteten Szenarien wie P/Invokes.

SafeHandleMarshaller<T>.ManagedToUnmanagedRef

Marshalls a SafeHandle als zugrunde liegenden Handlewert als ref Parameter in verwalteten zu nicht verwalteten Szenarien wie P/Invokes.

SpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Unterstützt das Marshallen von verwaltetem in nicht verwalteten Code in einem Aufruf von verwaltetem Code in nicht verwalteten Code.

Utf8StringMarshaller.ManagedToUnmanagedIn

Benutzerdefinierter Marshaller zum Marshallen einer verwalteten Zeichenfolge als nicht verwaltete UTF-8-Zeichenfolge.

VirtualMethodTableInfo

Stellt Informationen zu einer virtuellen Methodentabelle und dem nicht verwalteten instance-Zeiger 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 Strategie für die Nachschlagestrategie für virtuelle Methodentabellen.

IIUnknownDerivedDetails

Stellt Details zur von IUnknown abgeleiteten Schnittstelle bereit.

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 virtuellen Methodentabelle für eine verwaltete Schnittstelle bereit, um das Aufrufen von Methoden in der Tabelle der virtuellen Methoden zu ermöglichen.

Enumerationen

ComInterfaceOptions

Optionen zum Generieren von COM-Schnittstelleninterop mit dem COM-Interoperabilitätsquellengenerator.

MarshalMode

Stellt die verschiedenen Marshallingmodi dar.