CreateEnlistment, fonction (ktmw32.h)
Crée une inscription, définit son état initial et ouvre un handle pour l’inscription avec l’accès spécifié.
Syntaxe
HANDLE CreateEnlistment(
[in, optional] LPSECURITY_ATTRIBUTES lpEnlistmentAttributes,
[in] HANDLE ResourceManagerHandle,
[in] HANDLE TransactionHandle,
[in] NOTIFICATION_MASK NotificationMask,
[in, optional] DWORD CreateOptions,
[in, optional] PVOID EnlistmentKey
);
Paramètres
[in, optional] lpEnlistmentAttributes
Pointeur vers une structure de SECURITY_ATTRIBUTES qui contient les attributs de sécurité du gestionnaire d’inscription. Spécifiez NULL pour obtenir les attributs par défaut.
[in] ResourceManagerHandle
Handle au gestionnaire de ressources (RM) à inscrire.
[in] TransactionHandle
Handle de la transaction dans laquelle le RM s’inscrit.
[in] NotificationMask
Notifications demandées par ce RM pour le paramètre TransactionHandle . Pour obtenir la liste des valeurs valides, consultez NOTIFICATION_MASK.
[in, optional] CreateOptions
Instructions d’inscription facultatives.
Valeur | Signification |
---|---|
|
Inscrivez-vous en tant que gestionnaire de transactions supérieur. |
[in, optional] EnlistmentKey
Pointeur vers une structure définie par l’utilisateur utilisée par le RM qui est retourné lorsqu’une notification est envoyée dans la structure TRANSACTION_NOTIFICATION . Ceci est généralement utilisé pour associer une structure privée à cette transaction spécifique.
Valeur retournée
Si la fonction réussit, la valeur de retour est un handle de l’inscription.
Si la fonction échoue, la valeur de retour est INVALID_HANDLE_VALUE. Pour obtenir des informations détaillées sur l’erreur, appelez la fonction GetLastError.
La liste suivante identifie les codes d’erreur possibles :
Remarques
Windows Vista : Toute tentative de s’inscrire pendant la phase de pré-préparation ou ultérieure échoue.
Si vous ne spécifiez pas dans votre masque de notification que vous acceptez une demande de validation monophase, KTM effectue toujours une opération de validation en deux phases.
Gardez à l’esprit les règles de notification suivantes lors de l’inscription dans des transactions :
- Le RM doit toujours demander une notification de restauration.
- Si les demandes RM préparent la notification, elles doivent également demander une notification de validation.
- Si le RM demande une opération de validation monophase, il doit également spécifier les notifications de préparation et de validation.
- La seule fois où un RM n’est pas nécessaire pour demander des notifications de validation est lorsqu’il demande au moins une paire de notifications de préparation et de restauration.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Serveur minimal pris en charge | Windows Server 2008 |
Plateforme cible | Windows |
En-tête | ktmw32.h |
Bibliothèque | KtmW32.lib |
DLL | KtmW32.dll |