Fonction PcNewPort (portcls.h)

La fonction PcNewPort crée un objet pilote de port fourni par le système, dont l’interface (dérivée de la classe de base IPort) est spécifiée par un ID de classe.

Syntaxe

PORTCLASSAPI NTSTATUS PcNewPort(
  [out] PPORT    *OutPort,
  [in]  REFCLSID ClassID
);

Paramètres

[out] OutPort

Pointeur de sortie pour l’objet pilote de port créé par cette fonction. Ce paramètre pointe vers une variable pointeur allouée par l’appelant dans laquelle la fonction génère le pointeur vers l’objet IPort nouvellement créé. Cet objet a l’interface de port spécifiée par le paramètre ClassId . Spécifiez une valeur de pointeur non NULL valide pour ce paramètre.

[in] ClassID

Spécifie le type d’interface de port demandé. Pour plus d'informations, consultez la section Notes qui suit.

Valeur retournée

PcNewPort retourne STATUS_SUCCESS si l’appel a réussi. Sinon, elle retourne un code d’erreur approprié.

Remarques

Le paramètre ClassId peut être défini sur l’un des GUID du tableau suivant.

GUID de classe Nom de l’interface de port
CLSID_PortDMus

IPortDMus

CLSID_PortMidi

IPortMidi

CLSID_PortTopology

IPortTopology

CLSID_PortWaveCyclic

IPortWaveCyclique

CLSID_PortWavePci

IPortWavePci

CLSID_PortWaveRT

IPortWaveRT

 

CLSID_PortDMus est défini dans le fichier dmusicks.h du fichier dmusicks.h. Les quatre autres GUID du tableau précédent sont définis dans portcls.h.

Dans Microsoft Windows XP et versions ultérieures, les pilotes de port MIDI et DirectMusic partagent la même implémentation logicielle interne. Cela signifie que le GUID CLSID_PortMidi équivaut à CLSID_PortDMus.

Pour plus d’informations sur la création de pilotes de port et de miniport pour les sous-appareils, consultez Création de sous-appareil.

Le paramètre OutPort suit les conventions de comptage de références pour les objets COM.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Le pilote système PortCls implémente la fonction PcNewPort dans Microsoft Windows 98/Me et dans les systèmes d’exploitation Windows 2000 et ultérieur.
Plateforme cible Universal
En-tête portcls.h (include Portcls.h)
Bibliothèque Portcls.lib
IRQL PASSIVE_LEVEL

Voir aussi

IPort

IPortDMus

IPortMidi

IPortTopology

IPortWaveCyclique

IPortWavePci

IPortWaveRT