DEVPKEY_Device_BaseContainerId
Свойство устройства DEVPKEY_Device_BaseContainerId представляет значение GUID базового идентификатора контейнера. Диспетчер windows Plug and Play (PnP) назначает это значение узлу устройства (devnode).
attribute | Значение |
---|---|
Ключ свойств | DEVPKEY_Device_BaseContainerId |
Идентификатор типа данных свойства | DEVPROP_TYPE_GUID |
Доступ к свойству | Доступ только для чтения с помощью установочных приложений и установщиков. |
Соответствующий идентификатор SPDRP_Xx | SPDRP_BASE_CONTAINERID |
Локализованные? | Нет |
Remarks
Диспетчер PnP определяет идентификатор контейнера для devnode с помощью одного из следующих методов:
Драйвер автобуса предоставляет идентификатор контейнера.
Когда диспетчер PnP назначает идентификатор контейнера devnode, он сначала проверяет, может ли драйвер шины devnode предоставить идентификатор контейнера. Драйверы шины предоставляют идентификатор контейнера с помощью запроса IRP_MN_QUERY_ID с полем Parameters.QueryId.IdType, заданным как BusQueryContainerID.
Диспетчер PnP создает идентификатор контейнера с помощью возможности съемных устройств.
Если драйвер шины не может предоставить идентификатор контейнера для перечислимого devnode, диспетчер PnP использует возможность съемных устройств для создания идентификатора контейнера для всех перечисленных для устройства devnodes. Водитель автобуса сообщает об этой возможности устройства в ответ на запрос IRP_MN_QUERY_CAPABILITIES .
Диспетчер PnP создает идентификатор контейнера, используя переопределение возможности съемных устройств.
Хотя механизм переопределения не изменяет значение возможности съемных устройств, он заставляет диспетчер PnP использовать параметр переопределения, а не значение возможности съемных устройств при создании идентификаторов контейнеров для устройств.
Дополнительные сведения об этих методах см. в разделе Создание идентификаторов контейнеров.
Независимо от способа получения значения идентификатора контейнера диспетчер PnP присваивает значение свойству DEVPKEY_Device_BaseContainerId devnode.
Свойство DEVPKEY_Device_BaseContainerId можно использовать для принудительного группирования нового devnode с другими devnodes, которые существуют в системе. Это позволяет использовать новый devnode в качестве родительского (или базового) идентификатора контейнера для других связанных devnodes. Для этого необходимо сначала получить DEVPKEY_Device_BaseContainerID GUID существующего devnode. Затем необходимо вернуть идентификатор GUID контейнера нового devnode в ответ на запрос IRP_MN_QUERY_ID запроса, в поле Parameters.QueryId.IdType которого задано значение BusQueryContainerID.
Примечание
Значение, возвращаемое запросом свойств DEVPKEY_Device_BaseContainerId или DEVPKEY_Device_ContainerId , может отличаться для одного и того же devnode.
Примечание
Не используйте свойство DEVPKEY_Device_BaseContainerId для восстановления групп контейнеров устройств в системе. Вместо этого используйте свойство DEVPKEY_Device_ContainerId .
Дополнительные сведения об идентификаторах контейнеров см. в разделе Идентификаторы контейнеров.
Требования
Версия: Windows 7 и более поздние версии Windows
Заголовок: Devpkey.h (включая Devpkey.h)