Función PcNewMiniport (portcls.h)
La función PcNewMiniport crea una instancia de uno de los controladores de miniporte proporcionados por el sistema integrados en el controlador del sistema PortCls, portcls.sys. Un identificador de clase especifica cuál de estos controladores de minipuerto se crea una instancia. El controlador admite una interfaz de minipuerto que se deriva de IMiniport.
Sintaxis
PORTCLASSAPI NTSTATUS PcNewMiniport(
[out] PMINIPORT *OutMiniPort,
[in] REFCLSID ClassID
);
Parámetros
[out] OutMiniPort
Puntero de salida para el objeto miniport-driver creado por esta función. Este parámetro apunta a una variable de puntero asignada por el autor de la llamada en la que la función genera una referencia al objeto IMiniport recién creado. Este objeto es una instancia del controlador de minipuerto especificado por el parámetro ClassId . Especifique un valor de puntero válido que no sea NULL para este parámetro.
[in] ClassID
Especifica la interfaz de minipuerto que se solicita. Para obtener más información, vea la sección Comentarios que se muestra más adelante.
Valor devuelto
PcNewMiniport devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado.
Comentarios
Los controladores de minipuerto suministrados por el sistema para MPU-401 UART y sintetizadores OPL3 se pueden crear instancias llamando a PcNewMiniport Estos son controladores de miniport integrados que se proporcionan con el controlador del sistema portcls.sys. Los controladores de minipuerto que forman parte del controlador del adaptador de un proveedor no se crean de esta manera.
El parámetro ClassId se puede establecer en uno de los GUID de la tabla siguiente.
GUID | controlador de System-Supplied |
---|---|
CLSID_MiniportDriverDMusUART | Controlador de minipuerto DMusUART para el dispositivo synth MPU-401. Expone la interfaz IMiniportDMus para su uso con el objeto de puerto IPortDMus . |
CLSID_MiniportDriverDMusUARTCapture | Controlador de minipuerto DMusUARTCapture para el dispositivo de captura MPU-401. Expone la interfaz IMiniportDMus para su uso con el objeto de puerto IPortDMus . |
CLSID_MiniportDriverFmSynth | Controlador de minipuerto FmSynth para el dispositivo synth FM. Expone la interfaz IMiniportMidi para su uso con el objeto de puerto IPortMidi . |
CLSID_MiniportDriverFmSynthWithVol | Igual que la entrada anterior, salvo que el controlador también admite un nodo de volumen. |
CLSID_MiniportDriverUart | Controlador de minipuerto UART para el dispositivo sintetizador MPU-401. Expone la interfaz IMiniportMidi para su uso con el objeto de puerto IPortMidi . Obsoleto. |
Los dos primeros GUID de la tabla anterior se definen en el archivo de encabezado dmusicks.h; los tres últimos se definen en portcls.h.
El controlador de minipuerto DMusUART genera datos MIDI en un dispositivo synth con una interfaz MIDI MPU-401 pura. Para producir sonido, este dispositivo necesita un módulo de sonido MIDI externo conectado a él.
El controlador de minipuerto DMusUARTCapture introduce datos MIDI desde un dispositivo de captura con una interfaz MPU-401 pura.
El controlador de minipuerto FMSynth genera datos MIDI en un dispositivo sintetizador que implementa la síntesis FM de estilo OPL3. El GUID de CLSID_MiniportDriverFmSynth es adecuado para la mayoría de los dispositivos de synth FM. Sin embargo, los dispositivos como el sistema de sonido de Windows que no proporcionan un control de volumen de hardware después de la síntesis FM deben usar el GUID de CLSID_MiniportDriverFmSynthWithVol en su lugar. En Windows Server SP1 y versiones posteriores, el controlador de minipuerto FMSynth solo está disponible en versiones de 32 bits del sistema operativo.
El controlador de miniporte UART está obsoleto. El nuevo código de controlador del adaptador debe usar el controlador de miniporte DMusUART, que sustituye a UART e implementa un superconjunto de su funcionalidad.
Microsoft proporciona el código fuente para los controladores de miniporte DMusUART y FMSynth, que pueden servir como punto de partida para los proveedores de hardware que podrían necesitar ampliar estos controladores para administrar funcionalidades adicionales del dispositivo. Busque en los controladores de audio de ejemplo en el Kit de controladores de Windows (WDK).
Consulte Creación de subdispositivos Para obtener más información sobre cómo crear controladores de puerto y minipuerto para subdispositivos.
El parámetro OutMiniport sigue las convenciones de recuento de referencias para objetos COM.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | El controlador del sistema PortCls implementa la función PcNewMiniport en Microsoft Windows 98/Me y en los sistemas operativos Windows 2000 y versiones posteriores. |
Plataforma de destino | Universal |
Encabezado | portcls.h (incluir Portcls.h) |
Library | Portcls.lib |
IRQL | PASSIVE_LEVEL |