DdeInitializeW, fonction (ddeml.h)
Inscrit une application auprès de la bibliothèque de gestion Dynamic Data Exchange Management (DDEML). Une application doit appeler cette fonction avant d’appeler toute autre fonction DDEML (Dynamic Data Exchange Management Library).
Syntaxe
UINT DdeInitializeW(
[in, out] LPDWORD pidInst,
[in] PFNCALLBACK pfnCallback,
[in] DWORD afCmd,
DWORD ulRes
);
Paramètres
[in, out] pidInst
Type : LPDWORD
Identificateur de l’instance de l’application. Lors de l’initialisation, ce paramètre doit pointer vers 0. Si la fonction réussit, ce paramètre pointe vers l’identificateur d’instance de l’application. Cette valeur doit être passée en tant que paramètre idInst dans toutes les autres fonctions DDEML qui en ont besoin. Si une application utilise plusieurs instances de la bibliothèque de liens dynamiques DDEML (DLL), l’application doit fournir une fonction de rappel différente pour chaque instance.
Si pidInst pointe vers une valeur différente de zéro, la réinitialisation du DDEML est implicite. Dans ce cas, pidInst doit pointer vers un identificateur d’instance d’application valide.
[in] pfnCallback
Type : PFNCALLBACK
Pointeur vers la fonction de rappel DDE définie par l’application. Cette fonction traite les transactions DDE envoyées par le système. Pour plus d’informations, consultez la fonction de rappel DdeCallback.
[in] afCmd
Type : DWORD
Ensemble d’indicateurs de APPCMD_, de CBF_et de MF_. Les indicateurs APPCMD_ fournissent des instructions spéciales pour DdeInitialize. Les indicateurs CBF_ spécifient des filtres qui empêchent des types spécifiques de transactions d’atteindre la fonction de rappel. Les indicateurs MF_ spécifient les types d’activité DDE qu’une application de surveillance DDE surveille. L’utilisation de ces indicateurs améliore les performances d’une application DDE en éliminant les appels inutiles à la fonction de rappel.
Ce paramètre peut être une ou plusieurs des valeurs suivantes.
Valeur | Signification |
---|---|
|
Permet à l’application de surveiller l’activité DDE dans le système. Cet indicateur est utilisé par les applications de surveillance DDE. L’application spécifie les types d’activité DDE à surveiller en combinant un ou plusieurs indicateurs de surveillance avec l’indicateur APPCLASS_MONITOR. Pour plus d’informations, consultez la section Remarques suivante. |
|
Inscrit l’application en tant qu’application DDEML standard (non supervisée). |
|
Empêche l’application de devenir un serveur dans une conversation DDE. L’application ne peut être qu’un client. Cet indicateur réduit la consommation de ressources par le DDEML. Il inclut les fonctionnalités de l’indicateur de CBF_FAIL_ALLSVRXACTIONS. |
|
Empêche le DDEML d’envoyer des transactions XTYP_CONNECT et XTYP_WILDCONNECT à l’application jusqu’à ce que l’application ait créé ses handles de chaîne et inscrit ses noms de service ou ait désactivé le filtrage par un appel ultérieur à l'DdeNameService ou DdeInitialize fonction. Cet indicateur est toujours en vigueur lorsqu’une application appelle DdeInitialize pour la première fois, que l’application spécifie l’indicateur. Lors des appels suivants à DdeInitialize, ne pas spécifier cet indicateur désactive les filtres de nom de service de l’application, mais en spécifiant qu’il active les filtres de nom de service de l’application. |
|
Empêche la fonction de rappel de recevoir des transactions de serveur. Le système retourne DDE_FNOTPROCESSED à chaque client qui envoie une transaction à cette application. Cet indicateur équivaut à combiner tous les indicateurs CBF_FAIL_. |
|
Empêche la fonction de rappel de recevoir des transactions XTYP_ADVSTART et XTYP_ADVSTOP. Le système retourne DDE_FNOTPROCESSED à chaque client qui envoie une transaction XTYP_ADVSTART ou XTYP_ADVSTOP au serveur. |
|
Empêche la fonction de rappel de recevoir des transactions XTYP_CONNECT et XTYP_WILDCONNECT. |
|
Empêche la fonction de rappel de recevoir des transactions XTYP_EXECUTE. Le système retourne DDE_FNOTPROCESSED à un client qui envoie une transaction XTYP_EXECUTE au serveur. |
|
Empêche la fonction de rappel de recevoir des transactions XTYP_POKE. Le système retourne DDE_FNOTPROCESSED à un client qui envoie une transaction XTYP_POKE au serveur. |
|
Empêche la fonction de rappel de recevoir XTYP_REQUEST transactions. Le système retourne DDE_FNOTPROCESSED à un client qui envoie une transaction de XTYP_REQUEST au serveur. |
|
Empêche la fonction de rappel de recevoir des transactions XTYP_CONNECT de la propre instance de l’application. Cet indicateur empêche une application d’établir une conversation DDE avec sa propre instance. Une application doit utiliser cet indicateur s’il doit communiquer avec d’autres instances de lui-même, mais pas avec lui-même. |
|
Empêche la fonction de rappel de recevoir des notifications. Cet indicateur équivaut à combiner tous les indicateurs CBF_SKIP_. |
|
Empêche la fonction de rappel de recevoir des notifications XTYP_CONNECT_CONFIRM. |
|
Empêche la fonction de rappel de recevoir des notifications XTYP_DISCONNECT. |
|
Empêche la fonction de rappel de recevoir des notifications XTYP_REGISTER. |
|
Empêche la fonction de rappel de recevoir des notifications XTYP_UNREGISTER. |
|
Avertit la fonction de rappel chaque fois qu’une transaction est envoyée à n’importe quelle fonction de rappel DDE dans le système. |
|
Avertit la fonction de rappel chaque fois qu’une conversation est établie ou arrêtée. |
|
Avertit la fonction de rappel chaque fois qu’une erreur DDE se produit. |
|
Avertit la fonction de rappel chaque fois qu’une application DDE crée, libère ou incrémente le nombre d’utilisation d’un handle de chaîne ou chaque fois qu’un handle de chaîne est libéré suite à un appel à la fonction DdeUninitialize. |
|
Avertit la fonction de rappel chaque fois qu’une boucle d’avis est démarrée ou terminée. |
|
Avertit la fonction de rappel chaque fois que le système ou une application publie un message DDE. |
|
Avertit la fonction de rappel chaque fois que le système ou une application envoie un message DDE. |
ulRes
Type : DWORD
Réservé; doit être défini sur zéro.
Valeur de retour
Type : uiNT
Si la fonction réussit, la valeur de retour est DMLERR_NO_ERROR.
Si la fonction échoue, la valeur de retour est l’une des valeurs suivantes :
Remarques
Une application qui utilise plusieurs instances du DDEML ne doit pas passer d’objets DDEML entre des instances.
Une application de supervision DDE ne doit pas tenter d’effectuer des opérations DDE (établir des conversations, émettre des transactions, et ainsi de suite) dans le contexte de la même instance d’application.
Une transaction synchrone échoue avec une erreur de DMLERR_REENTRANCY si une instance de la même tâche a déjà une transaction synchrone en cours.
L’indicateur CBF_FAIL_ALLSVRXACTIONS entraîne le filtrage de toutes les transactions de serveur par le DDEML et peut être modifié par un appel ultérieur à DdeInitialize. L’indicateur APPCMD_CLIENTONLY empêche le DDEML de créer des ressources clés pour le serveur et ne peut pas être modifié par un appel ultérieur à DdeInitialize.
Il existe une version ANSI et une version Unicode de DdeInitialize. La version appelée détermine le type des procédures de fenêtre utilisées pour contrôler les conversations DDE (ANSI ou Unicode) et la valeur par défaut du membre
Note
L’en-tête ddeml.h définit DdeInitialize en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | ddeml.h (include Windows.h) |
bibliothèque | User32.lib |
DLL | User32.dll |
Voir aussi
Vue d’ensemble de la bibliothèque de gestion d’Exchange des données dynamiques