다음을 통해 공유


PcNewMiniport 함수(portcls.h)

PcNewMiniport 함수는 portcls.sys PortCls 시스템 드라이버에 기본 제공되는 시스템 제공 미니포트 드라이버 중 하나의 instance 만듭니다. 클래스 ID는 이러한 미니포트 드라이버 중 인스턴스화할 드라이버를 지정합니다. 드라이버는 IMiniport에서 파생된 미니포트 인터페이스를 지원합니다.

구문

PORTCLASSAPI NTSTATUS PcNewMiniport(
  [out] PMINIPORT *OutMiniPort,
  [in]  REFCLSID  ClassID
);

매개 변수

[out] OutMiniPort

이 함수에서 만든 미니포트 드라이버 개체에 대한 출력 포인터입니다. 이 매개 변수는 함수가 새로 만든 IMiniport 개체에 대한 참조를 출력하는 호출자 할당 포인터 변수를 가리킵니다. 이 개체는 ClassId 매개 변수로 지정된 미니포트 드라이버의 instance. 이 매개 변수에 유효한 NULL이 아닌 포인터 값을 지정합니다.

[in] ClassID

요청되는 미니포트 인터페이스를 지정합니다. 자세한 내용은 아래 설명 부분을 참조하십시오.

반환 값

PcNewMiniport 는 호출이 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 적절한 오류 코드를 반환합니다.

설명

MPU-401 UART 및 OPL3 신시사이저용 시스템 제공 미니포트 드라이버는 PcNewMiniport 를 호출하여 인스턴스화할 수 있습니다. 이러한 드라이버는 portcls.sys 시스템 드라이버와 함께 제공되는 기본 제공 미니포트 드라이버입니다. 공급업체 어댑터 드라이버의 일부인 미니포트 드라이버는 이러한 방식으로 만들어지지 않습니다.

ClassId 매개 변수는 다음 표의 GUID 중 하나로 설정할 수 있습니다.

GUID System-Supplied 드라이버
CLSID_MiniportDriverDMusUART MPU-401 신디사이저 디바이스용 DMusUART 미니포트 드라이버입니다. IPortDMus 포트 개체에 사용할 IMiniportDMus 인터페이스를 노출합니다.
CLSID_MiniportDriverDMusUARTCapture MPU-401 캡처 디바이스용 DMusUARTCapture 미니포트 드라이버입니다. IPortDMus 포트 개체에 사용할 IMiniportDMus 인터페이스를 노출합니다.
CLSID_MiniportDriverFmSynth FM 신디사이저 디바이스용 FmSynth 미니포트 드라이버입니다. IPortMidi 포트 개체에 사용할 IMiniportMidi 인터페이스를 노출합니다.
CLSID_MiniportDriverFmSynthWithVol 드라이버가 볼륨 노드도 지원한다는 점을 제외하고 이전 항목과 동일합니다.
CLSID_MiniportDriverUart MPU-401 신디사이저 디바이스용 UART 미니포트 드라이버입니다. IPortMidi 포트 개체에 사용할 IMiniportMidi 인터페이스를 노출합니다. 사용되지 않습니다.
 

앞의 표에 있는 처음 두 GUID는 헤더 파일 dmusicks.h에 정의되어 있습니다. 마지막 세 가지는 portcls.h에 정의됩니다.

DMusUART 미니포트 드라이버는 순수 MPU-401 MIDI 인터페이스를 사용하여 MIDI 데이터를 신디사이저 디바이스에 출력합니다. 소리를 생성하려면 이 디바이스에 외부 MIDI 사운드 모듈이 연결되어 있어야 합니다.

DMusUARTCapture 미니포트 드라이버는 순수 MPU-401 인터페이스를 사용하여 캡처 디바이스에서 MIDI 데이터를 입력합니다.

FMSynth 미니포트 드라이버는 OPL3 스타일 FM 합성을 구현하는 신디사이저 디바이스에 MIDI 데이터를 출력합니다. CLSID_MiniportDriverFmSynth GUID는 대부분의 FM 신디사이저 디바이스에 적합합니다. 그러나 FM 신디사이저 후에 하드웨어 볼륨 제어를 제공하지 않는 Windows 사운드 시스템과 같은 디바이스는 대신 CLSID_MiniportDriverFmSynthWithVol GUID를 사용해야 합니다. Windows Server SP1 이상에서 FMSynth 미니포트 드라이버는 운영 체제의 32비트 버전에서만 사용할 수 있습니다.

UART 미니포트 드라이버는 사용되지 않습니다. 새 어댑터 드라이버 코드는 UART를 대체하고 해당 기능의 상위 집합을 구현하는 DMusUART 미니포트 드라이버를 사용해야 합니다.

Microsoft는 DMusUART 및 FMSynth 미니포트 드라이버에 대한 소스 코드를 제공합니다. 이 소스 코드는 추가 디바이스 기능을 관리하기 위해 이러한 드라이버를 확장해야 할 수 있는 하드웨어 공급업체의 시작점 역할을 할 수 있습니다. WDK(Windows 드라이버 키트)에서 샘플 오디오 드라이버를 확인합니다.

하위 서비스에 대한 포트 및 미니포트 드라이버를 만드는 방법에 대한 자세한 내용은 하위 서비스 만들기를 참조하세요.

OutMiniport 매개 변수는 COM 개체에 대한 참조 계산 규칙을 따릅니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 PortCls 시스템 드라이버는 Microsoft Windows 98/Me 및 Windows 2000 이상 운영 체제에서 PcNewMiniport 함수를 구현합니다.
대상 플랫폼 유니버설
헤더 portcls.h(Portcls.h 포함)
라이브러리 Portcls.lib
IRQL PASSIVE_LEVEL

추가 정보

IMiniport

IMiniportDMus

IMiniportMidi

IPortDMus

IPortMidi