Поделиться через


Обход ассоциации между пространствами имен

Начиная с Windows 7, инструментарий управления Windows (WMI) реализовал стандартный механизм обнаружения профилей с помощью схемы CIM.

WMI поддерживает обход связи между пространствами имен и регистрацию профиля связи. Дополнительные сведения о регистрации профиля и стандартной реализации CIM обхода ассоциаций см. в разделе DSP1033 (https://www.dmtf.org/standards/published_documents/DSP1033.pdf).

Для поддержки этой функции инфраструктура WMI сделала следующее:

  • Создано пространство имен взаимодействия: \root\interop.
  • Разрешен обход связи между пространствами имен. Ассоциации, которые перекрестно поддерживают фильтрацию на уровне класса ассоциаций и на уровне реализованного пространства имен.
  • Добавлены классы CIM_RegisteredProfile, CIM_ElementConformsToProfile и CIM_ReferencedProfile .
  • Реализована совместимость схемы CIM версии 2.17.1. Дополнительные сведения см. в разделе Совместимость схем CIM.

Пространство имен взаимодействия

Пространство имен взаимодействия предоставляет клиентскому приложению общее расположение для обнаружения всех профилей, поддерживаемых на компьютере. Профили можно использовать для управления различными аспектами операционной системы, массива хранилища или базы данных.

Все классы и объекты взаимодействия должны быть определены в пространстве имен root\interop.

Классы CIM

Классы CIM, описанные в следующем списке, поддерживают обход ассоциаций между пространствами имен.

CIM_RegisteredProfile

Используется для идентификации спецификации профиля, объявленной как реализуемая. Этот класс задает сведения, включая имя профиля, организацию и версию, с которой соответствует реализация.

CIM_ElementConformsToProfile

Используется для связывания экземпляров элементов управления, определенных в профилях, с классом CIM_RegisteredProfile , определяющим конкретные спецификации профиля, которые реализуются.

CIM_ReferencedProfile

Используется для представления связи между профилями.

Реализация обхода ассоциаций между пространствами имен

Служба WMI позволяет обход ассоциаций между пространствами имен. WMI предоставляет пространство имен взаимодействия для регистрации профилей и связывания их с профилями, реализованными в разных пространствах имен. Однако для использования обхода ассоциаций разработчики должны создавать экземпляры классов профилей как в интерфейсе взаимодействия, так и в реализованном пространстве имен. Дополнительные сведения см. в статье Написание поставщика связей для взаимодействия.

Связи, которые пересекаются между пространствами имен в одной среде управления, должны создаваться как в пространствах имен взаимодействия, так и в реализованных пространствах имен. В противном случае обход ассоциации не будет работать. Например, поставщик сопоставлений профилей power должен быть зарегистрирован в пространствах имен root/interop и root/cimv2/power. Обход связи должен выполняться из любого пространства имен обратно в другое. Примеры обхода ассоциаций см. в разделе Доступ к данным в пространстве имен взаимодействия.

**Windows Vista: **

Если после обновления до Windows 7 есть профили устройств взаимодействия, которые ранее были установлены в пространстве имен root/interop, профили Windows 7 не будут установлены. Эти сторонние объекты профиля перезаписывают схему взаимодействия Windows 7 для поддержания функциональности. Кроме того, записывается событие приложения WMI с идентификатором 5631.

Чтобы получить профили взаимодействия с Windows 7, необходимо скомпилировать версию файла Interop.mof для Windows 7 и связанные файлы MFL. Дополнительные сведения см. в разделе Компиляция MOF-файлов.

CIM_RegisteredProfile

CIM_ElementConformsToProfile

CIM_ReferencedProfile

Совместимость схем CIM

Написание поставщика связей для взаимодействия

Доступ к данным в пространстве имен взаимодействия