Marshaling d'interopérabilité
Mise à jour : novembre 2007
Cette section s'adresse entre autres aux programmeurs qui utilisent l'appel de code non managé, COM interop ou les deux afin de marshaler des données. Certaines règles de marshaling et de types de données par défaut varient selon les deux mécanismes :
Si vous utilisez l'appel de code non managé, cette section fournit des exemples de marshaling de chaînes, de tableaux, de classes, de structures, d'unions et divers types variés.
Si vous utilisez COM interop, cette section décrit la manière de personnaliser les wrappers d'interopérabilité.
Le marshaling d'interopérabilité détermine la manière dont les données sont passées dans les arguments de méthode et les valeurs de retour entre la mémoire managée et la mémoire non managée lors des appels. Le marshaling d'interopérabilité est une activité runtime exécutée par le service marshaling du Common Language Runtime.
Cette section fournit une vue d'ensemble du service marshaling d'interopérabilité et présente des informations détaillées sur la manière dont sont marshalés les types de données possédant des représentations différentes ou ambiguës en mémoire non managée. Cette section décrit également la manière d'appliquer l'attribut MarshalAsAttribute et d'utiliser les méthodes exposées par la classe Marshal pour modifier le comportement de marshaling par défaut.
Dans cette section
Vue d'ensemble du marshaling d'interopérabilité
Décrit le service marshaling, sa relation avec le marshaling COM et son rôle dans les communications distantes.Comportement de marshaling par défaut
Décrit les règles utilisées par le service marshaling d'interopérabilité pour marshaler des données.Marshaling de données à l'aide de l'appel de code non managé
Décrit comment déclarer des paramètres de méthode et comment passer des arguments à des fonctions exportées par des bibliothèques non managées.Marshaling de données à l'aide de COM Interop
Décrit comment personnaliser des wrappers COM pour modifier le comportement de marshaling.Comment : mapper des HRESULT et des exceptions
Décrit comment mapper des exceptions personnalisées au HRESULT et fournit le mappage complet entre chaque HRESULT et sa classe d'exception comparable dans le .NET Framework.Interopérabilité à l'aide de types génériques
Décrit quelles actions sont prises en charge lors de l'utilisation de types génériques pour l'interopérabilité COM.
Rubriques connexes
Interopération avec du code non managé
Décrit les services d'interopérabilité fournis par le Common Language Runtime.Interopérabilité COM avancée
Fournit des liens vers d'autres informations sur l'incorporation de composants COM dans votre application .NET Framework.Considérations de design pour l'interopérabilité
Fournit des conseils pour l'écriture de composants COM intégrés..Accès distant .NET
Décrit les différentes méthodes de communication disponibles dans le .NET Framework pour les communications distantes.