Funzione di callback PFNCALLBACK (ddeml.h)
Funzione di callback definita dall'applicazione usata con le funzioni DDEML ( Dynamic Data Exchange Management Library ). Elabora le transazioni DDE (Dynamic Data Exchange). Il tipo PFNCALLBACK definisce un puntatore a questa funzione di callback. DdeCallback è un segnaposto per il nome della funzione definita dall'applicazione.
Sintassi
PFNCALLBACK Pfncallback;
HDDEDATA Pfncallback(
[in] UINT wType,
[in] UINT wFmt,
[in] HCONV hConv,
[in] HSZ hsz1,
[in] HSZ hsz2,
[in] HDDEDATA hData,
[in] ULONG_PTR dwData1,
[in] ULONG_PTR dwData2
)
{...}
Parametri
[in] wType
Tipo: UINT
Tipo della transazione corrente. Questo parametro è costituito da una combinazione di flag di classe di transazione e flag del tipo di transazione. La tabella seguente descrive ognuna delle classi di transazione e fornisce un elenco dei tipi di transazione in ogni classe. Per informazioni su un tipo di transazione specifico, vedere la singola descrizione di tale tipo in Osservazioni.
[in] wFmt
Tipo: UINT
Formato in cui i dati vengono inviati o ricevuti.
[in] hConv
Tipo: HCONV
Handle per la conversazione associata alla transazione corrente.
[in] hsz1
Tipo: HSZ
Handle di una stringa. Il significato di questo parametro dipende dal tipo della transazione corrente. Per il significato di questo parametro, vedere la descrizione del tipo di transazione in Osservazioni.
[in] hsz2
Tipo: HSZ
Handle di una stringa. Il significato di questo parametro dipende dal tipo della transazione corrente. Per il significato di questo parametro, vedere la descrizione del tipo di transazione in Osservazioni.
[in] hData
Tipo: HDDEDATA
Handle per i dati DDE. Il significato di questo parametro dipende dal tipo della transazione corrente. Per il significato di questo parametro, vedere la descrizione del tipo di transazione in Osservazioni.
[in] dwData1
Tipo: ULONG_PTR
Dati specifici della transazione. Per il significato di questo parametro, vedere la descrizione del tipo di transazione in Osservazioni.
[in] dwData2
Tipo: ULONG_PTR
Dati specifici della transazione. Per il significato di questo parametro, vedere la descrizione del tipo di transazione in Osservazioni.
Valore restituito
Tipo: HDDEDATA
Il valore restituito dipende dalla classe di transazioni. Per altre informazioni sui valori restituiti, vedere descrizioni dei singoli tipi di transazione.
Commenti
XCLASS_BOOL
Una funzione di callback DDE deve restituire TRUE o FALSE al termine dell'elaborazione di una transazione appartenente a questa classe. La classe di transazione XCLASS_BOOL è costituita dai tipi seguenti:
XCLASS_DATA
Una funzione di callback DDE deve restituire un handle DDE, il CBR_BLOCK codice restituito o NULL al termine dell'elaborazione di una transazione appartenente a questa classe. La classe di transazione XCLASS_DATA è costituita dai tipi seguenti:
XCLASS_FLAGS
Una funzione di callback DDE deve restituire DDE_FACK, DDE_FBUSY o DDE_FNOTPROCESSED al termine dell'elaborazione di una transazione appartenente a questa classe. La classe di transazione XCLASS_FLAGS è costituita dai tipi seguenti:
XCLASS_NOTIFICATION
I tipi di transazione che appartengono a questa classe sono solo a scopo di notifica. Il valore restituito dalla funzione di callback viene ignorato. La classe di transazione XCLASS_NOTIFICATION è costituita dai tipi seguenti:
- XTYP_ADVSTOP
- XTYP_CONNECT_CONFIRM
- XTYP_DISCONNECT
- XTYP_ERROR
- XTYP_MONITOR
- XTYP_REGISTER
- XTYP_XACT_COMPLETE
- XTYP_UNREGISTER
La funzione di callback viene chiamata in modo asincrono per le transazioni che non comportano la creazione o la chiusura delle conversazioni. Un'applicazione che non accetta spesso messaggi in ingresso avrà prestazioni DDE ridotte perché la libreria DDEML (Dynamic Data Exchange Management Library) usa i messaggi per avviare le transazioni.
Un'applicazione deve registrare la funzione di callback specificando un puntatore alla funzione in una chiamata alla funzione DdeInitialize .
Requisiti
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 (include Windows.h) |
Vedi anche
Informazioni concettuali