PcNewMiniport-Funktion (portcls.h)

Die PcNewMiniport-Funktion erstellt eine instance eines der vom System bereitgestellten Miniporttreiber, die in den PortCls-Systemtreiber integriert sind, portcls.sys. Eine Klassen-ID gibt an, welcher dieser Miniporttreiber instanziieren soll. Der Treiber unterstützt eine Miniportschnittstelle, die von IMiniport abgeleitet ist.

Syntax

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

Parameter

[out] OutMiniPort

Ausgabezeiger für das miniport-driver-Objekt, das von dieser Funktion erstellt wurde. Dieser Parameter verweist auf eine vom Aufrufer zugewiesene Zeigervariable, in die die Funktion einen Verweis auf das neu erstellte IMiniport-Objekt ausgibt. Dieses Objekt ist ein instance des Miniporttreibers, der durch den ClassId-Parameter angegeben wird. Geben Sie einen gültigen Zeigerwert ohne NULL für diesen Parameter an.

[in] ClassID

Gibt die angeforderte Miniportschnittstelle an. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

Rückgabewert

PcNewMiniport gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich war. Andernfalls wird ein entsprechender Fehlercode zurückgegeben.

Hinweise

Die vom System bereitgestellten Miniporttreiber für MPU-401-UARTs und OPL3-Synthesizer können durch Aufrufen von PcNewMiniport instanziiert werden. Hierbei handelt es sich um integrierte Miniporttreiber, die mit dem portcls.sys Systemtreibern bereitgestellt werden. Miniporttreiber, die Teil des Adaptertreibers eines Anbieters sind, werden auf diese Weise nicht erstellt.

Der ClassId-Parameter kann auf eine der GUIDs in der folgenden Tabelle festgelegt werden.

GUID System-Supplied Treiber
CLSID_MiniportDriverDMusUART DMusUART-Miniporttreiber für das MPU-401-Synth-Gerät. Macht die IMiniportDMus-Schnittstelle für die Verwendung mit dem IPortDMus-Portobjekt verfügbar.
CLSID_MiniportDriverDMusUARTCapture DMusUARTCapture-Miniporttreiber für das MPU-401-Erfassungsgerät. Macht die IMiniportDMus-Schnittstelle für die Verwendung mit dem IPortDMus-Portobjekt verfügbar.
CLSID_MiniportDriverFmSynth FmSynth-Miniporttreiber für FM-Synth-Gerät. Macht die IMiniportMidi-Schnittstelle zur Verwendung mit dem IPortMidi-Portobjekt verfügbar.
CLSID_MiniportDriverFmSynthWithVol Identisch mit dem vorherigen Eintrag, mit dem Unterschied, dass der Treiber auch einen Volumeknoten unterstützt.
CLSID_MiniportDriverUart UART-Miniporttreiber für das MPU-401-Synth-Gerät. Macht die IMiniportMidi-Schnittstelle zur Verwendung mit dem IPortMidi-Portobjekt verfügbar. Veraltet.
 

Die ersten beiden GUIDs in der vorherigen Tabelle sind in der Headerdatei dmusicks.h definiert; die letzten drei sind in portcls.h definiert.

Der DMusUART-Miniporttreiber gibt MIDI-Daten an ein Synth-Gerät mit einer reinen MPU-401-MIDI-Schnittstelle aus. Um Sound zu erzeugen, benötigt dieses Gerät ein externes MIDI-Soundmodul, das daran angeschlossen ist.

Der DMusUARTCapture-Miniporttreiber gibt MIDI-Daten von einem Erfassungsgerät mit einer reinen MPU-401-Schnittstelle ein.

Der FMSynth-Miniporttreiber gibt MIDI-Daten an ein Synth-Gerät aus, das die FM-Synthese im OPL3-Stil implementiert. Die CLSID_MiniportDriverFmSynth GUID ist für die meisten FM-Synth-Geräte geeignet. Geräte wie das Windows-Soundsystem, die nach dem FM-Synth keine Hardwarelautstärkeregelung bereitstellen, sollten stattdessen die CLSID_MiniportDriverFmSynthWithVol GUID verwenden. In Windows Server SP1 und höher ist der FMSynth-Miniporttreiber nur in 32-Bit-Versionen des Betriebssystems verfügbar.

Der UART-Miniporttreiber ist veraltet. Neuer Adaptertreibercode sollte den DMusUART-Miniporttreiber verwenden, der UART ablöst und eine Übermenge seiner Funktionalität implementiert.

Microsoft stellt den Quellcode für die DMusUART- und FMSynth-Miniporttreiber bereit, die als Ausgangspunkt für Hardwareanbieter dienen können, die diese Treiber möglicherweise erweitern müssen, um zusätzliche Gerätefunktionen zu verwalten. Sehen Sie sich die Beispiel-Audiotreiber im Windows Driver Kit (WDK) an.

Weitere Informationen zum Erstellen von Port- und Miniporttreibern für Untergeräte finden Sie unter Untergeräteerstellung .

Der OutMiniport-Parameter folgt den Referenzzählungskonventionen für COM-Objekte.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Der PortCls-Systemtreiber implementiert die PcNewMiniport-Funktion in Microsoft Windows 98/Me und in Windows 2000 und höheren Betriebssystemen.
Zielplattform Universell
Header portcls.h (include Portcls.h)
Bibliothek Portcls.lib
IRQL PASSIVE_LEVEL

Weitere Informationen

IMiniport

IMiniportDMus

IMiniportMidi

IPortDMus

IPortMidi