Fonction DdeGetLastError (ddeml.h)
Récupère le code d’erreur le plus récent défini par l’échec d’une fonction DDEML (Dynamic Data Exchange Management Library) et réinitialise le code d’erreur à DMLERR_NO_ERROR.
Syntaxe
UINT DdeGetLastError(
[in] DWORD idInst
);
Paramètres
[in] idInst
Type : DWORD
L’application instance identificateur obtenu par un appel précédent à la fonction DdeInitialize.
Valeur retournée
Type : UINT
Si la fonction réussit, la valeur de retour est le dernier code d’erreur, qui peut être l’une des valeurs suivantes.
Code/valeur de retour | Description |
---|---|
|
Une demande de transaction d’avis synchrone a expiré. |
|
La réponse à la transaction a entraîné la définition de l’indicateur DDE_FBUSY . |
|
Une requête pour une transaction de données synchrone a expiré. |
|
Une fonction DDEML a été appelée sans appeler d’abord la fonction DdeInitialize, ou un identificateur de instance non valide a été passé à une fonction DDEML. |
|
Une application initialisée en tant que APPCLASS_MONITOR a tenté d’effectuer une transaction DDE ou une application initialisée en tant que APPCMD_CLIENTONLY a tenté d’effectuer des transactions serveur. |
|
Une requête pour une transaction d’exécution synchrone a expiré. |
|
Un paramètre n’a pas pu être validé par le DDEML. Voici quelques-unes des causes possibles : L’application a utilisé un handle de données initialisé avec un handle de nom d’élément différent de celui requis par la transaction. L’application a utilisé un handle de données qui a été initialisé avec un format de données du Presse-papiers différent de celui requis par la transaction. L’application a utilisé un handle de conversation côté client avec une fonction côté serveur ou inversement. L’application a utilisé un handle de données libéré ou un handle de chaîne. Plusieurs instance de l’application ont utilisé le même objet. |
|
Une application DDEML a créé une condition de course prolongée (dans laquelle l’application serveur dépasse le client), ce qui entraîne la consommation de grandes quantités de mémoire. |
|
Une allocation de mémoire a échoué. |
|
La tentative d’établissement d’une conversation par un client a échoué. |
|
Une transaction a échoué. |
|
Une demande pour une transaction de type poke synchrone a expiré. |
|
Un appel interne à la fonction PostMessage a échoué. |
|
Une application instance avec une transaction synchrone déjà en cours a tenté d’initier une autre transaction synchrone, ou la fonction DdeEnableCallback a été appelée à partir d’une fonction de rappel DDEML. |
|
Une transaction côté serveur a été tentée lors d’une conversation terminée par le client, ou le serveur s’est arrêté avant d’effectuer une transaction. |
|
Une erreur interne s’est produite dans le DDEML. |
|
Une demande de mettre fin à une transaction d’avis a expiré. |
|
Un identificateur de transaction non valide a été passé à une fonction DDEML. Une fois que l’application est retournée à partir d’un rappel XTYP_XACT_COMPLETE , l’identificateur de transaction pour cette fonction de rappel n’est plus valide. |
Configuration requise
Condition requise | Valeur |
---|---|
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
Bibliothèque de gestion d’Échange de données dynamiques
Référence