Udostępnij za pośrednictwem


System.Runtime.InteropServices.Marshalling Przestrzeń nazw

Zawiera typy obsługi międzyoperacjności generowanej przez źródło, takie jak MarshalUsingAttribute.

Klasy

Nazwa Opis
AnsiStringMarshaller

Marshaller dla ciągów ANSI.

ArrayMarshaller<T,TUnmanagedElement>

Reprezentuje marshaller tablic.

BStrStringMarshaller

Marshaller dla ciągów BSTR.

ComExposedClassAttribute<T>

Wskazuje, że wystąpienia typu powinny być uwidocznione w modelu COM.

ComInterfaceMarshaller<T>

Marshaluje interfejs COM przy użyciu StrategyBasedComWrappers wystąpienia.

ComObject

Klasa bazowa dla wszystkich wywołań środowiska uruchomieniowego generowanego przez źródło COM (RCWs).

ComVariantMarshaller

Marshalsuje element Object do elementu ComVariant.

ContiguousCollectionMarshallerAttribute

Określa, że ten typ punktu wejścia marshaller jest ciągły marshaller kolekcji.

CustomMarshallerAttribute

Wskazuje typ punktu wejścia do definiowania marshallera.

ExceptionAsDefaultMarshaller<T>

Konwertuje wyjątek na wartość domyślną określonego typu niezarządzanego.

ExceptionAsHResultMarshaller<T>

Marshaluje obiekt wyjątku do wartości przekonwertowanej HResult na T.

ExceptionAsNaNMarshaller<T>

Konwertuje wszystkie wyjątki na NaN.

ExceptionAsVoidMarshaller

Reprezentuje marshaller, który połyka wyjątki.

GeneratedComClassAttribute

Określa, że typ atrybutu zostanie uwidoczniony dla modelu COM za pośrednictwem modelu COM wygenerowanego przez źródło i że generator źródła powinien wygenerować dla niego kod.

GeneratedComInterfaceAttribute

Określa, że typ atrybutu jest interfejsem COM i że generator źródła powinien wygenerować kod dla niego.

IUnknownDerivedAttribute<T,TImpl>

Wskazuje, że interfejs jest zarządzaną reprezentacją interfejsu pochodnego IUnknown.

MarshalUsingAttribute

Atrybut używany do podawania niestandardowego typu marshallera lub informacji o rozmiarze do marshallingu.

NativeMarshallingAttribute

Atrybut używany do udostępniania domyślnego niestandardowego typu marshallera dla danego typu zarządzanego.

PointerArrayMarshaller<T,TUnmanagedElement>

Reprezentuje marshaller tablicy wskaźników.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.UnmanagedToManagedOut

Obsługuje marshaling z zarządzanego do niezarządzanego w wywołaniu z niezarządzanego kodu do kodu zarządzanego.

ReadOnlySpanMarshaller<T,TUnmanagedElement>

Obsługuje rozdzielanie ReadOnlySpan<T> wartości z zarządzanej do ciągłej macierzy natywnej niezarządzanych wartości elementów.

SafeHandleMarshaller<T>

Marshals SafeHandle- typy pochodne zgodnie z regułami okresu istnienia obiektów SafeHandle .

SpanMarshaller<T,TUnmanagedElement>

Obsługuje rozdzielanie Span<T> wartości z zarządzanej do ciągłej macierzy natywnej niezarządzanych wartości elementów.

StrategyBasedComWrappers

Typ ComWrappersoparty na modelu , który używa dostosowywalnych obiektów strategii do implementowania otoek obiektów COM i zarządzanych otoek obiektów uwidocznionych w modelu COM.

UniqueComInterfaceMarshaller<T>

Przeprowadzanie marshalingu interfejsów COM przy użyciu wystąpienia StrategyBasedComWrappers, które tworzy tylko unikatowe otoki obiektów natywnych (RCW).

Utf16StringMarshaller

Marshaller dla ciągów UTF-16.

Utf8StringMarshaller

Marshaller dla ciągów UTF-8.

Struktury

Nazwa Opis
AnsiStringMarshaller.ManagedToUnmanagedIn

Niestandardowy marshaller do marshalingu zarządzanego ciągu jako niezarządzanego ciągu ANSI.

ArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Marshaller do marshalling tablicy z zarządzanych do niezarządzanych.

BStrStringMarshaller.ManagedToUnmanagedIn

Niestandardowy marshaller do marshalingu zarządzanego ciągu jako niezarządzanego ciągu ANSI.

ComVariant

Typ reprezentujący WARIANT OLE w kodzie zarządzanym.

ComVariantMarshaller.RefPropagate

Marshalsuje element Object do ComVariant, propagując wartość Object z powrotem do istniejącego magazynu danych wariantu, jeśli wariant ma VT_BYREF typ.

CustomMarshallerAttribute.GenericPlaceholder

Typ symbolu zastępczego dla parametru ogólnego.

IIUnknownCacheStrategy.TableInfo

Zawiera informacje o interfejsie COM i jego tabeli metod wirtualnych.

PointerArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Reprezentuje marshaller do marshalingu tablicy z zarządzanej do niezarządzanej.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Obsługuje marshaling z zarządzanego do niezarządzanego w wywołaniu z kodu zarządzanego do niezarządzanego kodu.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedOut

Obsługuje marshaling z niezarządzanego do zarządzanego w wywołaniu z kodu zarządzanego do niezarządzanego kodu. Na przykład zwracane wartości i out parametry w metodach P/Invoke.

SafeHandleMarshaller<T>.ManagedToUnmanagedIn

Marshalsuje jako podstawową SafeHandle wartość dojścia jako in parametr lub parametr przekazywany przez wartość w scenariuszach niezarządzanych zarządzanych, takich jak P/Invokes.

SafeHandleMarshaller<T>.ManagedToUnmanagedOut

Marshalsuje jako podstawową SafeHandle wartość dojścia out jako parametr w scenariuszach zarządzanych do niezarządzanych, takich jak P/Invokes.

SafeHandleMarshaller<T>.ManagedToUnmanagedRef

Marshalsuje jako podstawową SafeHandle wartość dojścia ref jako parametr w scenariuszach zarządzanych do niezarządzanych, takich jak P/Invokes.

SpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Obsługuje marshaling z zarządzanego do niezarządzanego w wywołaniu z kodu zarządzanego do niezarządzanego kodu.

Utf8StringMarshaller.ManagedToUnmanagedIn

Niestandardowy marshaller do marshalingu zarządzanego ciągu jako ciągu niezarządzanego UTF-8.

VirtualMethodTableInfo

Zawiera informacje o tabeli metod wirtualnych i wskaźnik wystąpienia niezarządzanego.

Interfejsy

Nazwa Opis
IComExposedClass

Definiuje informacje na poziomie typu dla typów klas zarządzanych uwidocznionych w modelu COM.

IComExposedDetails

Definiuje szczegółowe informacje o typie klasy zarządzanej uwidocznionej w modelu COM.

IIUnknownCacheStrategy

Definiuje niezarządzaną tabelę metod wirtualnych, która wyszukuje strategię.

IIUnknownDerivedDetails

Zawiera szczegółowe informacje dotyczące interfejsu pochodnego IUnknown.

IIUnknownInterfaceDetailsStrategy

Definiuje strategię uzyskiwania szczegółów interfejsu.

IIUnknownInterfaceType

Definiuje informacje o poziomie typu dla interfejsu pochodnego IUnknown.

IIUnknownStrategy

Definiuje strategię interakcji IUnknown.

IUnmanagedVirtualMethodTableProvider

Zawiera informacje o tabeli metod wirtualnych dla interfejsu zarządzanego umożliwiającego wywoływanie metod w tabeli metod wirtualnych.

Wyliczenia

Nazwa Opis
ComInterfaceOptions

Opcje generowania międzyoperajności interfejsu COM za pomocą generatora źródła międzyoperatorowego MODELU COM.

MarshalMode

Reprezentuje różne tryby marshalingu używane przez, CustomMarshallerAttribute aby wskazać, kiedy ma zastosowanie marshaller.