Partager via


SerCx2InitializeDeviceInit, fonction (sercx.h)

La méthode SerCx2InitializeDeviceInit permet à la version 2 de l’extension d’infrastructure série (SerCx2) d’inscrire des propriétés spécifiques à l’extension auprès de l’infrastructure de pilote pendant la création de l’objet d’appareil framework pour le contrôleur série.

Syntaxe

NTSTATUS SerCx2InitializeDeviceInit(
  [in, out] PWDFDEVICE_INIT DeviceInit
);

Paramètres

[in, out] DeviceInit

Pointeur vers une structure WDFDEVICE_INIT, qui est une structure opaque qui stocke les informations que l’infrastructure kmDF (Kernel Mode Driver Framework) utilise pour créer un objet d’appareil framework. Le pilote du contrôleur série reçoit un pointeur vers cette structure en tant que paramètre d’entrée vers la fonction de rappel evtDriverDeviceAdd du pilote.

Valeur de retour

SerCx2InitializeDeviceInit retourne STATUS_SUCCESS si l’appel réussit. Les valeurs de retour d’erreur possibles incluent les codes d’état suivants.

Retourner le code Description
STATUS_INVALID_DEVICE_REQUEST
La méthode a été appelée au niveau irQL incorrect ou le paramètre DeviceInit est NULL.
STATUS_INSUFFICIENT_RESOURCES
Les ressources insuffisantes sont disponibles pour effectuer l’opération demandée.

Remarques

Le pilote de contrôleur série doit appeler cette méthode à partir de son EvtDriverDeviceAdd fonction de rappel avant de créer un objet WDFDEVICE pour le contrôleur série.

SerCx2InitializeDeviceInit attache des informations spécifiques à l’extension à la structure WDFDEVICE_INIT du pilote. Ces informations permettent à SerCx2 d’effectuer certaines actions pour le compte du pilote du contrôleur série. Par exemple, SerCx2 reçoit des demandes d’E/S que les clients envoient au contrôleur série.

Le pilote du contrôleur série doit appeler SerCx2InitializeDeviceInit avant de créer un objet d’appareil framework pour représenter le contrôleur série et avant d’appeler la méthode SerCx2InitializeDevice pour terminer l’initialisation de l’objet d’appareil. Le pilote appelle une méthode telle que WdfDeviceCreate pour créer l’objet d’appareil.

SerCx2InitializeDeviceInit définit un descripteur de sécurité par défaut qui permet aux pilotes en mode noyau et aux pilotes en mode utilisateur d’envoyer des requêtes d’E/S à SerCx2. Le descripteur permet aux applications d’envoyer ces demandes uniquement s’ils s’exécutent avec des privilèges d’administrateur. Pour spécifier ce descripteur, SerCx2 utilise la chaîne SDDL suivante :

"D:P(A;;GA;;;SY)(A;;GA;;;BA)(A;;GA;;;UD)" Si nécessaire, le pilote du contrôleur série peut remplacer le paramètre par défaut en appelant le descripteur de sécurité WdfDeviceInitAssignSDLString. Le pilote doit appeler WdfDeviceInitAssignSDLString après avoir appelé SerCx2InitializeDeviceInit mais avant d’appeler WdfDeviceCreate. Pour plus d’informations sur les chaînes SDDL, consultez SDDL pour device Objects.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8.1.
plateforme cible Universel
d’en-tête sercx.h
IRQL PASSIVE_LEVEL

Voir aussi

EvtDriverDeviceAdd

SerCx2InitializeDevice

WDFDEVICE_INIT

WdfDeviceCreate

WdfDeviceInitAssignSDLString