<Элемент PreferComInsteadOfManagedRemoting>
Указывает, будет ли среда выполнения использовать COM-взаимодействие вместо удаленного взаимодействия для всех вызовов через границы домена приложения.
<Конфигурации>
<Среды выполнения>
<PreferComInsteadOfManagedRemoting>
Синтаксис
<PreferComInsteadOfManagedRemoting enabled="true|false"/>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Атрибуты
Атрибут | Описание |
---|---|
enabled |
Обязательный атрибут. Указывает, будет ли среда выполнения использовать COM-взаимодействие вместо удаленного взаимодействия через границы домена приложения. |
Атрибут enabled
Значение | Описание |
---|---|
false |
Среда выполнения будет использовать удаленное взаимодействие через границы домена приложения. Это значение по умолчанию. |
true |
Среда выполнения будет использовать COM-взаимодействие через границы домена приложения. |
Дочерние элементы
Отсутствует.
Родительские элементы
Элемент | Описание |
---|---|
configuration |
Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework. |
runtime |
Содержит сведения о привязке сборок и сборке мусора. |
Комментарии
Если для атрибута enabled
задано значение true
, среда выполнения ведет себя следующим образом:
Среда выполнения не вызывает IUnknown::QueryInterface для интерфейса IManagedObject , когда интерфейс IUnknown входит в домен через COM-интерфейс. Вместо этого он создает вызываемую оболочку среды выполнения (RCW) вокруг объекта .
Среда выполнения возвращает E_NOINTERFACE при получении
QueryInterface
вызова интерфейса IManagedObject для любой вызываемой оболочки COM (CCW), созданной в этом домене.
Эти два поведения гарантируют, что все вызовы через COM-интерфейсы между управляемыми объектами через границы домена приложения используют COM и COM-взаимодействие вместо удаленного взаимодействия.
Пример
В следующем примере показано, как указать, что среда выполнения должна использовать COM-взаимодействие через границы изоляции:
<configuration>
<runtime>
<PreferComInsteadOfManagedRemoting enabled="true"/>
</runtime>
</configuration>