Partager via


SerCxDeviceInitConfig, fonction (sercx.h)

La méthode SerCxDeviceInitConfig est appelée par le pilote du contrôleur série pour attacher l’extension de framework série (SerCx) au pipeline d’E/S pour un objet d’appareil framework (FDO ou PDO) qu’il crée.

Syntaxe

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

Paramètres

[in, out] DeviceInit

Pointeur vers la structure WDFDEVICE_INIT à configurer.

Valeur de retour

SerCxDeviceInitConfig retourne STATUS_SUCCESS si l’appel réussit. Les valeurs de retour d’erreur possibles incluent le code d’état suivant.

Retourner le code Description
STATUS_INSUFFICIENT_RESOURCES
Impossible d’allouer des ressources système (généralement de la mémoire).

Remarques

Cette méthode associe les informations de configuration de SerCx à la structure WDFDEVICE_INIT de l’objet d’appareil framework (PDO ou FDO) à créer. Appelez SerCxDeviceInitConfig avant d’appeler la méthode WdfDeviceCreate pour créer l’objet d’appareil.

La fonction de rappel evtDriverDeviceAdd du pilote de contrôleur reçoit un pointeur vers une structure de WDFDEVICE_INIT initialisée en tant que paramètre d’entrée.

SerCx définit un descripteur de sécurité par défaut que le pilote du contrôleur série peut, le cas échéant, remplacer. Par exemple, ce descripteur de sécurité par défaut permet à un pilote en mode utilisateur d’envoyer une demande d’E/S à un périphérique connecté à un port sur le contrôleur série. Pour modifier ce paramètre dans le descripteur de sécurité, le pilote du contrôleur série peut appeler la méthode WdfDeviceInitAssignSDLString. Cet appel doit se produire après l’appel SerCxDeviceInitConfig, mais avant l’appel à la méthode WdfDeviceCreate.

Exemples

Dans l’exemple de code suivant, la fonction de rappel evtDriverDeviceAd d du pilote de contrôleur passe une structure de WDFDEVICE_INIT initialisée à la méthode SerCxDeviceInitConfig. L’appel à SerCxDeviceInitConfig doit se produire avant l’appel WdfDeviceCreate qui crée le FDO pour l’appareil de contrôleur série (UART).

//
// FxDeviceInit is a pointer to an initialized WDFDEVICE_INIT structure.
// Drivers receive a pointer to this structure as an input parameter to an
// EvtDriverDeviceAdd callback function, or as a return value from the
// WdfControlDeviceInitAllocate method.
//

status = SerCxDeviceInitConfig(FxDeviceInit);

if (!NT_SUCCESS(status))
{
    return status;
}

// 
// Set WDF and SerCx device-level configuration options.
//

...

//
// Call the WdfDeviceCreate method.
//

...

Exigences

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

Voir aussi

EvtDriverDeviceAdd

WDFDEVICE_INIT

WdfDeviceCreate

WdfDeviceInitAssignSDLString