다음을 통해 공유


레거시 COM 포트 열거

직렬 함수 드라이버는 현재 레지스트리에 지정된 레거시 COM 포트 를 열거합니다. 직렬이 열거하는 대부분의 COM 포트는 마이크로 컨트롤러가 없는 멀티포트 보드의 레거시 디바이스입니다. 이 열거형 함수는 직렬에서 제거되고 향후 릴리스에서 설치 프로그램의 일부로 포함됩니다.

직렬은 다음 단계를 수행합니다.

  1. 드라이버 서비스 레지스트리 키 에서 하위 키로 식별된 COM 포트를 확인합니다 . \Services\Serial\Parameters\<Device 하위 키>.

    각 디바이스 하위 키에 대해 Serial은 레거시 COM 포트에 대한 레지스트리 설정에 설명된 레지스트리 정보를 가져옵니다.

  2. COM 포트가 레거시 디바이스인지 확인합니다. PnPDeviceID 항목 값이 null이면 디바이스는 레거시 디바이스입니다. COM 포트가 레거시 디바이스인 경우에만 직렬이 나머지 단계를 수행합니다. (PnPDeviceID가 null이 아닌 경우 포트는 버스 드라이버에 의해 열거되는 플러그 앤 플레이 디바이스입니다.)

  3. COM 포트가 레거시 디바이스인 경우 직렬은 이전에 검색했는지 확인합니다.

    직렬은 COM 포트의 LegacyDiscovered 항목 값(REG_DWORD)을 사용합니다. LegacyDiscovered가 0이 아닌 경우 직렬은 이전에 포트를 검색하고 다시 열거를 건너뜁니다. 플러그 앤 플레이 관리자는 레거시 포트를 추가하고 시작합니다.

    LegacyDiscovered가 0이면 Serial이 이전에 포트를 검색하지 않았고 COM 포트를 플러그 앤 플레이 관리자에게 보고했습니다. 플러그 앤 플레이 관리자는 PDO를 반환하고 해당 디바이스 트리에서 COM 포트에 대한 항목을 만듭니다.

  4. 검색된 각 레거시 COM 포트에 대한 FDO를 만들고 디바이스 스택에 연결합니다.

  5. 레거시 COM 포트의 플러그 앤 플레이 레지스트리 키 아래에 COM 포트 정보를 설정합니다.

    직렬은 레거시 COM 포트에 대한 레지스트리에서 읽은 정보의 하위 집합을 사용합니다. 자세한 내용은 플러그 앤 플레이 직렬 디바이스에 대한 레지스트리 설정을 참조하세요.

  6. 레거시 COM 포트를 시작합니다.

Windows 드라이버 레지스트리 키를 찾고 작업하는 방법에 대한 일반적인 내용은 디바이스 및 드라이버용 레지스트리 트리를 참조하세요.