Élément <PreferComInsteadOfManagedRemoting>
Spécifie si le runtime doit utiliser COM Interop au lieu de la communication à distance pour tous les appels au-delà des limites du domaine d’application.
<configuration>
<runtime>
<PreferComInsteadOfManagedRemoting>
Syntaxe
<PreferComInsteadOfManagedRemoting enabled="true|false"/>
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributs
Attribut | Description |
---|---|
enabled |
Attribut requis. Indique si le runtime doit utiliser COM Interop au lieu de la communication à distance au-delà des limites du domaine d’application. |
Attribut enabled
Valeur | Description |
---|---|
false |
Le runtime utilisera la communication à distance au-delà des limites du domaine d’application. Il s’agit de la valeur par défaut. |
true |
Le runtime utilisera COM Interop au-delà des limites du domaine d’application. |
Éléments enfants
Aucune.
Éléments parents
Élément | Description |
---|---|
configuration |
Élément racine de chaque fichier de configuration utilisé par le Common Language Runtime et les applications .NET Framework. |
runtime |
Contient des informations sur les liaisons d’assembly et l’opération garbage collection. |
Notes
Lorsque vous définissez l’attribut enabled
sur true
, le runtime se comporte comme suit :
Le runtime n’appelle pas IUnknown::QueryInterface pour une interface IManagedObject lorsqu’une interface IUnknown entre dans le domaine via une interface COM. Au lieu de cela, il construit un wrapper RCW (Runtime Callable Wrapper) autour de l’objet.
Le runtime renvoie E_NOINTERFACE lorsqu’il reçoit un appel
QueryInterface
pour une interface IManagedObject pour tout wrapper CCW (COM Callable Wrapper) créé dans ce domaine.
Ces deux comportements permettent de veiller à ce que tous les appels sur les interfaces COM entre des objets managés situés au-delà des limites du domaine d’application utilisent COM et COM Interop plutôt que la communication à distance.
Exemple
L’exemple suivant montre comment spécifier que le runtime doit utiliser COM Interop au-delà des limites d’isolement :
<configuration>
<runtime>
<PreferComInsteadOfManagedRemoting enabled="true"/>
</runtime>
</configuration>