Partager via


SerCx2CustomTransmitTransactionCreate, fonction (sercx.h)

La méthode SerCx2CustomTransmitTransactionCreate crée un objet de transmission-transaction personnalisée, que la version 2 de l’extension d’infrastructure série (SerCx2) utilise pour effectuer des transactions de transmission personnalisées.

Syntaxe

NTSTATUS SerCx2CustomTransmitTransactionCreate(
  [in]  SERCX2CUSTOMTRANSMIT                       CustomTransmit,
  [in]  PSERCX2_CUSTOM_TRANSMIT_TRANSACTION_CONFIG CustomTransmitTransactionConfig,
  [in]  PWDF_OBJECT_ATTRIBUTES                     Attributes,
  [out] SERCX2CUSTOMTRANSMITTRANSACTION            *CustomTransmitTransaction
);

Paramètres

[in] CustomTransmit

Handle SERCX2CUSTOMTRANSMIT à un objet de transmission personnalisé. Le pilote du contrôleur série a précédemment appelé la méthode SerCx2CustomTransmitCreate pour créer cet objet.

[in] CustomTransmitTransactionConfig

Pointeur vers une structure SERCX2_CUSTOM_TRANSMIT_TRANSACTION_CONFIG. Avant d’appeler cette méthode, l’appelant doit appeler la fonction SERCX2_CUSTOM_TRANSMIT_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 du 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 écrire des données dans le contrôleur série à transmettre.

[in] Attributes

Pointeur vers une structure WDF_OBJECT_ATTRIBUTES qui décrit les attributs à affecter au nouvel objet de transmission-transaction personnalisée. 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 du contrôleur série n’a pas besoin d’affecter des attributs à l’objet. Pour plus d’informations, consultez Remarques.

[out] CustomTransmitTransaction

Pointeur vers un emplacement vers lequel cette méthode écrit un handle SERCX2CUSTOMTRANSMITTRANSACTION dans l’objet de transaction personnalisée 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 de retour

Cette méthode 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
Un objet de transaction de transmission personnalisée existe déjà à partir d’un appel précédent SerCx2CustomTransmitTransactionCreate.
STATUS_INFO_LENGTH_MISMATCH
La valeur CustomTransmitTransactionTransactionConfig->Size ne correspond pas taille de(SERCX2_CUSTOM_TRANSMIT_TRANSACTION_CONFIG).
STATUS_INVALID_PARAMETER
Une valeur de paramètre n’est pas valide. L’appelant doit fournir un pointeur de fonction EvtSerCx2CustomTransmitTransactionStart valide.
STATUS_INSUFFICIENT_RESOURCES
Les ressources insuffisantes sont disponibles pour créer l’objet de transaction de transmission personnalisée.

Remarques

Votre pilote de contrôleur série peut appeler cette méthode pour créer un objet de transmission-transaction personnalisé. SerCx2 utilise cet objet pour gérer les transactions de transmission personnalisées, qui sont des transactions d’E/S qui utilisent un mécanisme de transfert de données personnalisé pour écrire des données dans le contrôleur série à transmettre.

En guise d’option, un pilote de contrôleur série peut utiliser le paramètre Attributes pour créer un contexte pour l’objet de transmission personnalisée et fournir des pointeurs vers EvtCleanupCallback et EvtDestroyCallback fonctions appelées pour préparer l’objet à 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 dans le ParentObject, ExecutionLevelet SynchronizationScope membres de cette structure.

Si la combinaison spécifiée de fonctions de rappel implémentées n’est pas valide, SerCx2CustomTransmitTransactionCreate échoue et retourne STATUS_INVALID_PARAMETER.

Pour plus d’informations sur la création d’objets transactionnels de transmission personnalisée, consultez SERCX2CUSTOMTRANSMITTRANSACTION. Pour plus d’informations sur les transactions de transmission personnalisée, consultez SerCx2 Custom-Transmit Transactions.

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

EvtCleanupCallback

EvtDestroyCallback

EvtSerCx2CustomTransmitTransactionStart

SERCX2CUSTOMTRANSMIT

SERCX2CUSTOMTRANSMITTRANSACTION

SERCX2_CUSTOM_TRANSMIT_TRANSACTION_CONFIG

SERCX2_CUSTOM_TRANSMIT_TRANSACTION_CONFIG_INIT

SerCx2CustomTransmitCreate

WDF_OBJECT_ATTRIBUTES

WDF_OBJECT_ATTRIBUTES_INIT