Comment les ID de conteneur sont générés

À compter de Windows 7, le gestionnaire de Plug-and-Play (PnP) génère un ID de conteneur pour un nœud d’appareil (devnode) via l’un des trois mécanismes suivants :

  • Un pilote de bus fournit un ID de conteneur.

    Lors de l’attribution d’un ID de conteneur à un devnode, le gestionnaire PnP vérifie d’abord si le pilote bus du devnode peut fournir un ID de conteneur. Les pilotes de bus fournissent un ID de conteneur via une requête IRP_MN_QUERY_ID avec le champ Parameters.QueryId.IdType défini sur BusQueryContainerID.

    Si un pilote du bus souhaite fournir un ID de conteneur, il peut obtenir un ID de conteneur authentique incorporé au matériel du périphérique physique, ou utiliser un ID unique spécifique au bus provenant du matériel du périphérique pour générer un ID de conteneur. Certains exemples d’ID uniques spécifiques au bus sont le numéro de série d’un appareil ou une adresse MAC (Media Access Control) dans le microprogramme de l’appareil.

    Note

    Le fournisseur de matériel indépendant (IHV) est responsable de l’unicité de l’ID de conteneur signalé par le pilote du bus.

    Pour plus d’informations, consultez les ID de conteneur générés à partir d’un ID unique spécifique au bus.

  • Le gestionnaire PnP génère un ID de conteneur par le biais de la capacité de périphérique amovible.

    Si un pilote de bus ne peut pas fournir d'identifiant de conteneur pour un nœud de périphérique qu'il est en train de répertorier, le gestionnaire Plug and Play (PnP) utilise la fonctionnalité de périphérique amovible pour générer un identifiant de conteneur pour tous les nœuds de périphérique répertoriés pour ce périphérique. Le pilote de bus signale cette capacité du périphérique en réponse à une demande IRP_MN_QUERY_CAPABILITIES.

    Pour plus d’informations, consultez Les ID de conteneur générés à partir de la fonctionnalité d’appareil amovible.

  • Le gestionnaire PnP génère un ID de conteneur via un remplacement de la capacité de périphérique amovible.

    Note

    Dans Windows 10, les appareils DPWS généreront toujours un ID de conteneur pour l’appareil à l’aide de cette méthode.

    Bien que le mécanisme de remplacement ne modifie pas la valeur de la fonctionnalité d’appareil amovible, il force le gestionnaire PnP à utiliser le paramètre de remplacement et non la valeur de la fonctionnalité d’appareil amovible lors de la génération d’ID de conteneur pour les appareils.

    Par exemple, si une redéfinition de la fonctionnalité d’appareil amovible spécifie que l’appareil est amovible, le gestionnaire PnP génère un ID de conteneur pour tous les devnodes énumérés pour l’appareil. Cette action est effectuée, que l’appareil se soit signalé comme amovible ou non.

    Un IHV peut renseigner le registre avec des clés qui remplacent la capacité de périphérique amovible signalée par l’appareil. Ce mécanisme de dérogation est utile pour les appareils hérités qui ne prennent pas en charge la fonctionnalité d’appareil amovible ou la signalent incorrectement.

    Pour plus d’informations, consultez Les ID de conteneur générés à partir d’une redéfinition de capacité d’appareil amovible.

En plus de ces méthodes, le système utilise des paramètres d’objet BIOS ACPI pour spécifier des regroupements de conteneurs de périphériques. Pour plus d’informations, consultez Utilisation d’ACPI pour le regroupement de conteneurs de périphériques.