System.Runtime.InteropServices.Marshalling Espace de noms

Contient des types de prise en charge pour l’interopérabilité générée par la source, comme MarshalUsingAttribute.

Classes

AnsiStringMarshaller

Marshaller pour les chaînes ANSI.

ArrayMarshaller<T,TUnmanagedElement>

Représente un marshaler pour les tableaux.

BStrStringMarshaller

Marshaller pour les chaînes BSTR.

ComExposedClassAttribute<T>

Indique que les instances d’un type doivent être exposées à COM.

ComInterfaceMarshaller<T>

Marshale une interface COM à l’aide d’un StrategyBasedComWrappers instance.

ComObject

Classe de base pour tous les wrappers pouvant être callables (RCW) d’exécution générés par la source COM.

ComVariantMarshaller

Contient des types de prise en charge pour l’interopérabilité générée par la source, comme MarshalUsingAttribute.

ContiguousCollectionMarshallerAttribute

Spécifie que ce type de point d’entrée marshaller est un marshalleur de collection contigu.

CustomMarshallerAttribute

Indique un type de point d’entrée pour définir un marshaller.

ExceptionAsDefaultMarshaller<T>

Convertit l’exception en valeur par défaut du type non managé spécifié.

ExceptionAsHResultMarshaller<T>

Marshale un objet d’exception à la valeur de son HResult converti Ten .

ExceptionAsNaNMarshaller<T>

Convertit toutes les exceptions en NaN.

ExceptionAsVoidMarshaller

Représente un marshaler qui avale les exceptions.

GeneratedComClassAttribute

Spécifie que le type attribué sera exposé à COM via COM généré par la source et que le générateur source doit générer du code pour celui-ci.

GeneratedComInterfaceAttribute

Spécifie que le type attribué est une interface COM et que le générateur source doit générer du code pour celle-ci.

IUnknownDerivedAttribute<T,TImpl>

Indique qu’une interface est une représentation managée d’une interface dérivée de IUnknown.

MarshalUsingAttribute

Attribut utilisé pour fournir un type de marshaler personnalisé ou des informations de taille pour le marshaling.

NativeMarshallingAttribute

Attribut utilisé pour fournir un type marshaller personnalisé par défaut pour un type managé donné.

PointerArrayMarshaller<T,TUnmanagedElement>

Représente un marshaler pour un tableau de pointeurs.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.UnmanagedToManagedOut

Prend en charge le marshaling de managé en non managé dans un appel du code non managé au code managé.

ReadOnlySpanMarshaller<T,TUnmanagedElement>

Prend en charge le marshaling d’une ReadOnlySpan<T> valeur managée vers un tableau natif contigu des valeurs non managées des éléments.

SafeHandleMarshaller<T>

Marshale les types dérivés SafeHandleselon les règles de durée de vie des SafeHandle objets.

SpanMarshaller<T,TUnmanagedElement>

Prend en charge le marshaling d’une Span<T> valeur managée vers un tableau natif contigu des valeurs non managées des éléments.

StrategyBasedComWrappers

Type ComWrappersbasé sur l’utilisation d’objets de stratégie personnalisables pour implémenter des wrappers d’objets COM et des wrappers d’objets managés exposés à COM.

UniqueComInterfaceMarshaller<T>

Marshale les interfaces COM à l’aide d’un instance StrategyBasedComWrappers qui crée uniquement des wrappers d’objets natifs uniques (RCW).

Utf16StringMarshaller

Marshaler pour les chaînes UTF-16.

Utf8StringMarshaller

Marshaler pour les chaînes UTF-8.

Structures

AnsiStringMarshaller.ManagedToUnmanagedIn

Marshaler personnalisé pour marshaler une chaîne managée en tant que chaîne non managée ANSI.

ArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Marshaller pour le marshaling d’un tableau de managé à non managé.

BStrStringMarshaller.ManagedToUnmanagedIn

Marshaler personnalisé pour marshaler une chaîne managée en tant que chaîne non managée ANSI.

ComVariant

Contient des types de prise en charge pour l’interopérabilité générée par la source, comme MarshalUsingAttribute.

ComVariantMarshaller.RefPropagate

Contient des types de prise en charge pour l’interopérabilité générée par la source, comme MarshalUsingAttribute.

CustomMarshallerAttribute.GenericPlaceholder

Type d’espace réservé pour un paramètre générique.

IIUnknownCacheStrategy.TableInfo

Contient des informations sur une interface COM et sa table de méthode virtuelle.

PointerArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Représente un marshalleur pour le marshaling d’un tableau de managé à non managé.

ReadOnlySpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Prend en charge le marshaling de managé en non managé dans un appel du code managé vers du code non managé.

SafeHandleMarshaller<T>.ManagedToUnmanagedIn

Marshale un SafeHandle en tant que valeur de in handle sous-jacente en tant que paramètre ou paramètre transmis par valeur dans des scénarios gérés à non managés comme P/Invokes.

SafeHandleMarshaller<T>.ManagedToUnmanagedOut

Marshale un SafeHandle en tant que valeur de handle sous-jacente en tant que out paramètre dans les scénarios gérés à non managés comme P/Invokes.

SafeHandleMarshaller<T>.ManagedToUnmanagedRef

Marshale un SafeHandle en tant que valeur de handle sous-jacente en tant que ref paramètre dans des scénarios gérés à non managés comme P/Invokes.

SpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn

Prend en charge le marshaling de managé en non managé dans un appel du code managé vers du code non managé.

Utf8StringMarshaller.ManagedToUnmanagedIn

Marshaler personnalisé pour marshaler une chaîne managée en tant que chaîne non managée UTF-8.

VirtualMethodTableInfo

Fournit des informations sur une table de méthode virtuelle et le pointeur d’instance non managé.

Interfaces

IComExposedClass

Définit des informations au niveau du type pour les types de classes managées exposés à COM.

IComExposedDetails

Définit des détails sur un type de classe managée exposé à COM.

IIUnknownCacheStrategy

Définit une stratégie de recherche de table de méthode virtuelle non managée.

IIUnknownDerivedDetails

Fournit des détails pour l’interface dérivée d’IUnknown.

IIUnknownInterfaceDetailsStrategy

Définit une stratégie d’acquisition des détails de l’interface.

IIUnknownInterfaceType

Définit des informations au niveau du type pour une interface dérivée de IUnknown.

IIUnknownStrategy

Définit la stratégie d’interaction IUnknown.

IUnmanagedVirtualMethodTableProvider

Fournit des informations sur une table de méthode virtuelle pour une interface managée afin d’activer l’appel de méthodes dans la table de méthode virtuelle.

Énumérations

ComInterfaceOptions

Options permettant de générer l’interopérabilité d’interface COM avec le générateur de source d’interopérabilité COM.

MarshalMode

Représente les différents modes de marshaling.