Funzione DdeGetLastError (ddeml.h)
Recupera il codice di errore più recente impostato dall'errore di una funzione DDEML (Dynamic Data Exchange Management Library) e reimposta il codice di errore in DMLERR_NO_ERROR.
Sintassi
UINT DdeGetLastError(
[in] DWORD idInst
);
Parametri
[in] idInst
Tipo: DWORD
Identificatore dell'istanza dell'applicazione ottenuto da una chiamata precedente alla funzione DdeInitialize .
Valore restituito
Tipo: UINT
Se la funzione ha esito positivo, il valore restituito è l'ultimo codice di errore, che può essere uno dei valori seguenti.
Codice/valore restituito | Descrizione |
---|---|
|
Una richiesta di timeout per una transazione sincrono. |
|
La risposta alla transazione ha causato l'impostazione del flag DDE_FBUSY . |
|
Una richiesta per una transazione dati sincrona è scaduta. |
|
Una funzione DDEML è stata chiamata senza prima chiamare la funzione DdeInitialize o un identificatore di istanza non valido è stato passato a una funzione DDEML. |
|
Un'applicazione inizializzata come APPCLASS_MONITOR ha tentato di eseguire una transazione DDE o un'applicazione inizializzata come APPCMD_CLIENTONLY ha tentato di eseguire transazioni server. |
|
Una richiesta di timeout per una transazione di esecuzione sincrona. |
|
Impossibile convalidare un parametro da DDEML. Alcune delle possibili cause seguono: L'applicazione ha usato un handle dati inizializzato con un handle di nome elemento diverso rispetto a quello richiesto dalla transazione. L'applicazione ha usato un handle dati inizializzato con un formato di dati diverso rispetto a quello richiesto dalla transazione. L'applicazione ha usato un handle di conversazione lato client con una funzione lato server o viceversa. L'applicazione ha usato un handle di dati o un handle stringa liberato. Più di un'istanza dell'applicazione ha usato lo stesso oggetto. |
|
Un'applicazione DDEML ha creato una condizione di gara prolungata (in cui l'applicazione server esegue l'esecuzione del client), causando l'utilizzo di grandi quantità di memoria. |
|
Non è riuscita un'allocazione di memoria. |
|
Il tentativo di un client di stabilire una conversazione non è riuscito. |
|
Una transazione non è riuscita. |
|
Una richiesta per una transazione di poke sincrona è scaduta. |
|
Una chiamata interna alla funzione PostMessage non è riuscita. |
|
Un'istanza dell'applicazione con una transazione sincrona già in corso ha tentato di avviare un'altra transazione sincrona o la funzione DdeEnableCallback è stata chiamata dall'interno di una funzione di callback DDEML. |
|
Una transazione lato server è stata tentata in una conversazione terminata dal client o dal server terminato prima di completare una transazione. |
|
Si è verificato un errore interno nella DDEML. |
|
Una richiesta di fine di una transazione di avviso è scaduta. |
|
Un identificatore di transazione non valido è stato passato a una funzione DDEML. Una volta restituita l'applicazione da un callback XTYP_XACT_COMPLETE , l'identificatore della transazione per tale funzione di callback non è più valido. |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | ddeml.h (includere Windows.h) |
Libreria | User32.lib |
DLL | User32.dll |
Vedi anche
Informazioni concettuali
Libreria di gestione di Dynamic Data Exchange
Riferimento