Partager via


Fonction DdeEnableCallback (ddeml.h)

Active ou désactive les transactions pour une conversation spécifique ou pour toutes les conversations actuellement établies par l’application appelante.

Syntaxe

BOOL DdeEnableCallback(
  [in] DWORD idInst,
  [in] HCONV hConv,
  [in] UINT  wCmd
);

Paramètres

[in] idInst

Type : DWORD

Identificateur instance application obtenu par un appel précédent à la fonction DdeInitialize.

[in] hConv

Type : HCONV

Handle de la conversation à activer ou désactiver. Si ce paramètre a la valeur NULL, la fonction affecte toutes les conversations.

[in] wCmd

Type : UINT

Code de la fonction. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
EC_ENABLEALL
0
Active toutes les transactions pour la conversation spécifiée.
EC_ENABLEONE
0x0080
Active une transaction pour la conversation spécifiée.
EC_DISABLE
0x0008
Désactive toutes les transactions pouvant être bloquées pour la conversation spécifiée.

Une application serveur peut désactiver les transactions suivantes :

Une application cliente peut désactiver les transactions suivantes :
EC_QUERYWAITING
2
Détermine si des transactions se trouvent dans la file d’attente pour la conversation spécifiée.

Valeur retournée

Type : BOOL

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

Si le paramètre wCmd est EC_QUERYWAITING et que la file d’attente de transactions d’application contient une ou plusieurs transactions non traitées qui ne sont pas traitées, la valeur de retour est TRUE ; sinon, elle est FALSE.

La fonction DdeGetLastError peut être utilisée pour obtenir le code d’erreur, qui peut être l’une des valeurs suivantes :

Notes

Une application peut désactiver les transactions pour une conversation spécifique en retournant le CBR_BLOCK code de retour à partir de sa fonction de rappel DDE (Dynamic Data Exchange). Lorsque vous réactivez la conversation à l’aide de la fonction DdeEnableCallback , le système d’exploitation génère la même transaction que celle qui était en cours lorsque la conversation a été désactivée.

L’utilisation de l’indicateur EC_QUERYWAITING ne modifie pas l’état d’activation de la conversation et n’entraîne pas l’émission de transactions dans le contexte de l’appel à DdeEnableCallback.

Si DdeEnableCallback est appelé avec EC_QUERYWAITING et que la fonction retourne une valeur différente de zéro, une application doit essayer d’autoriser rapidement le traitement des messages, de retourner à partir de son rappel ou d’activer les rappels. Un tel résultat ne garantit pas que les rappels suivants seront effectués. L’appel de DdeEnableCallback avec EC_QUERYWAITING permet à une application avec des rappels bloqués de déterminer si des transactions sont en attente sur la conversation bloquée. Bien entendu, même si un tel appel retourne zéro, une application doit toujours traiter les messages en temps opportun.

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête ddeml.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll

Voir aussi

Conceptuel

DdeConnect

DdeConnectList

DdeDisconnect

DdeInitialize

Bibliothèque de gestion Dynamic Data Exchange

Référence