다음을 통해 공유


컨테이너 ID 구현 문제 해결

디바이스 및 프린터 UI(사용자 인터페이스)에서 디바이스의 instance 하나만 예상할 때 표시되는 경우 디바이스는 컨테이너 ID 요구 사항을 올바르게 구현하지 않습니다. 이 잘못된 구현으로 인해 플러그 앤 플레이(PnP) 관리자가 하나 이상의 디바이스 노드(devnodes)를 디바이스의 추가 디바이스 컨테이너로 그룹화합니다.

이러한 경우 다음을 검사해야 합니다.

  • 디바이스에 대해 열거되는 각 devnode에 대해 이동식 디바이스 기능이 올바르게 설정되었나요?

    이는 디바이스 및 프린터 UI에서 여러 디바이스 인스턴스의 가장 일반적인 원인입니다. 디바이스의 각 devnode에 이동식 디바이스 기능이 적절하게 설정되어 있는지 확인합니다. 디바이스의 최상위 또는 상위 devnode는 이동식으로 보고되어야 하며 모든 자식은 이동식이 아닌 것으로 보고되어야 합니다. 사용자 지정 버스 드라이버 구현은 열거하는 devnode에 대해 이동식 관계를 올바르게 할당해야 합니다.

    장치 관리자 이러한 문제를 진단하는 유용한 도구입니다. 다음 단계를 수행하여 전체 devnode 계층 구조를 검사할 수 있습니다.

    1. 내 컴퓨터 아이콘을 마우스 오른쪽 단추로 클릭한 다음 관리를 클릭합니다. 결과 디스플레이에 나열된 시스템 도구에서 장치 관리자 선택합니다.
    2. 드롭다운 메뉴에서 연결로 보기를 클릭합니다.
    3. 디바이스를 구성하는 devnode를 찾습니다. 각 devnode에 대해 노드를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.
    4. 세부 정보 탭의 속성 드롭다운 목록에서 기능을 클릭합니다.

    devnode의 기능 값 목록에 CM_DEVCAP_REMOVABLE 플래그가 포함된 경우 devnode는 이동식으로 표시됩니다. 그런 다음 플러그 앤 플레이(PnP) 관리자는 제거할 수 없는 devnode 및 해당 자식에 대한 새 디바이스 컨테이너를 만듭니다.

    이동식 디바이스 기능에 대한 자세한 내용은 이동식 디바이스 기능에서 생성된 컨테이너 ID를 참조하세요.

    장치 관리자 대한 자세한 내용은 장치 관리자 사용을 참조하세요.

  • 디바이스에 하드웨어에 컨테이너 ID 또는 기타 고유 식별자가 포함되어 있나요?

    하드웨어의 컨테이너 ID 또는 고유 식별자 형식이 지정된 버스의 형식 요구 사항을 준수하는지 확인합니다. 자세한 내용은 Bus-Specific 고유 ID에서 생성된 컨테이너 ID를 참조하세요.

    디바이스에 대한 devnode가 사용자 지정 버스 드라이버에 의해 열거되는 경우 버스 드라이버가 BusQueryContainerID에 대한 IRP_MN_QUERY_ID 요청에 올바르게 응답하는지 검사.

  • 디바이스가 둘 이상의 버스로 컴퓨터에 동시에 연결되어 있나요?

    디바이스가 두 대 이상의 버스로 컴퓨터에 동시에 연결된 경우 디바이스의 인스턴스가 디바이스 및 프린터 UI에 둘 이상 표시될 수 있습니다. 이러한 인스턴스에는 디바이스가 연결된 각 버스에 대해 하나 이상의 디바이스 인스턴스가 있을 수 있습니다. 이 문제를 resolve 디바이스가 컨테이너 ID 또는 디바이스별 고유 식별자를 보고하고 각 버스에서 동일한 값을 보고하는지 확인합니다.