SerCx2CustomReceiveTransactionCreate, fonction (sercx.h)
La méthode SerCx2CustomReceiveTransactionCreate crée un objet custom-receive-transaction, que la version 2 de l’extension d’infrastructure série (SerCx2) utilise pour effectuer des transactions de réception personnalisées.
Syntaxe
NTSTATUS SerCx2CustomReceiveTransactionCreate(
[in] SERCX2CUSTOMRECEIVE CustomReceive,
[in] PSERCX2_CUSTOM_RECEIVE_TRANSACTION_CONFIG CustomReceiveTransactionConfig,
[in] PWDF_OBJECT_ATTRIBUTES Attributes,
[out] SERCX2CUSTOMRECEIVETRANSACTION *CustomReceiveTransaction
);
Paramètres
[in] CustomReceive
Handle SERCX2CUSTOMRECEIVE à un objet de réception personnalisé. Le pilote de contrôleur série a précédemment appelé la méthode SerCx2CustomReceiveCreate pour créer cet objet.
[in] CustomReceiveTransactionConfig
Pointeur vers une structure SERCX2_CUSTOM_RECEIVE_TRANSACTION_CONFIG . Avant d’appeler cette méthode, l’appelant doit appeler la fonction SERCX2_CUSTOM_RECEIVE_TRANSACTION_CONFIG_INIT pour initialiser la structure. Cette structure contient des pointeurs vers un ensemble de routines de rappel d’événements implémentées par le pilote de contrôleur série. SerCx2 appelle ces fonctions pour effectuer une transaction d’E/S qui utilise le mécanisme de transfert de données personnalisé pour lire les données reçues par le contrôleur série.
[in] Attributes
Pointeur vers une structure de WDF_OBJECT_ATTRIBUTES qui décrit les attributs à affecter au nouvel objet custom-receive-transaction. Avant d’appeler cette méthode, l’appelant doit appeler la fonction WDF_OBJECT_ATTRIBUTES_INIT pour initialiser la structure. Ce paramètre est facultatif et peut être spécifié en tant que WDF_NO_OBJECT_ATTRIBUTES si le pilote de contrôleur série n’a pas besoin d’affecter des attributs à l’objet. Pour plus d'informations, consultez la section Notes.
[out] CustomReceiveTransaction
Pointeur vers un emplacement dans lequel cette méthode écrit un handle de SERCX2CUSTOMRECEIVETRANSACTION dans l’objet custom-receive-transaction nouvellement créé. SerCx2 et le pilote de contrôleur série utilisent ce handle dans les appels suivants pour faire référence à cet objet.
Valeur retournée
Cette méthode retourne STATUS_SUCCESS si l’appel réussit. Les valeurs de retour d’erreur possibles incluent les codes status suivants.
Code de retour | Description |
---|---|
|
Un objet custom-receive-transaction existe déjà à partir d’un appel précédent SerCx2CustomReceiveTransactionCreate . |
|
La valeur CustomReceiveTransactionConfig->Size n’est pas égale à sizeof(SERCX2_CUSTOM_RECEIVE_TRANSACTION_CONFIG). |
|
Une valeur de paramètre n’est pas valide. L’appelant doit fournir des pointeurs de fonction EvtSerCx2CustomReceiveTransactionStart et EvtSerCx2CustomReceiveTransactionQueryProgress valides. |
|
Les ressources disponibles sont insuffisantes pour créer l’objet custom-receive-transaction. |
Remarques
Votre pilote de contrôleur série peut appeler cette méthode pour créer un objet custom-receive-transaction. SerCx2 utilise cet objet pour gérer les transactions de réception personnalisées, qui sont des transactions d’E/S qui utilisent un mécanisme de transfert de données personnalisé pour lire les données reçues par le contrôleur série.
En option, un pilote de contrôleur série peut utiliser le paramètre Attributes pour créer un contexte pour l’objet custom-receive et pour fournir des pointeurs vers les fonctions EvtCleanupCallback et EvtDestroyCallback appelées pour préparer l’objet en vue de la suppression. Pour plus d’informations, consultez WDF_OBJECT_ATTRIBUTES.
Si le paramètre Attributes pointe vers une structure WDF_OBJECT_ATTRIBUTES , l’appelant ne doit pas remplacer les valeurs que la fonction d’initialisation WDF_OBJECT_ATTRIBUTES_INIT écrit sur les membres ParentObject, ExecutionLevel et SynchronizationScope de cette structure.
Si la combinaison spécifiée de fonctions de rappel implémentées n’est pas valide, l’appel SerCx2CustomReceiveTransactionCreate échoue et retourne STATUS_INVALID_PARAMETER.
Pour plus d’informations sur la création d’objets custom-receive-transaction, consultez SERCX2CUSTOMRECEIVETRANSACTION. Pour plus d’informations sur les transactions de réception personnalisées, consultez Transactions SerCx2 Custom-Receive.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 8.1. |
Plateforme cible | Universal |
En-tête | sercx.h |
IRQL | PASSIVE_LEVEL |
Voir aussi
EvtSerCx2CustomReceiveTransactionQueryProgress
EvtSerCx2CustomReceiveTransactionStart
SERCX2CUSTOMRECEIVETRANSACTION
SERCX2_CUSTOM_RECEIVE_TRANSACTION_CONFIG