Libreria di gestione di Dynamic Data Exchange
Dynamic Data Exchange (DDE) è una forma di comunicazione interprocesso che usa la memoria condivisa per scambiare dati tra applicazioni. Le applicazioni possono usare DDE per trasferimenti di dati monouso e per scambi continui e l'aggiornamento dei dati.
In questa sezione
Nome | Descrizione |
---|---|
Informazioni sul DDEML | Illustra lo scambio di dati dinamici. |
Concetti di base | Vengono illustrati i concetti chiave relativi allo scambio di dati dinamici. |
Gestione conversazioni | Vengono illustrate le conversazioni tra un client e un server. |
Gestione dati | Viene illustrato come gli oggetti di memoria passano i dati da un'applicazione a un'altra. |
Monitoraggio di applicazioni | Viene illustrato come usare gli elementi della libreria di gestione di Dynamic Data Exchange per creare un'applicazione che monitora l'attività di scambio di dati dinamici nel sistema. |
Nome servizio | Viene illustrato in che modo dynamic Data Exchange Management Library consente a un'applicazione server di registrare i nomi di servizio supportati. |
Gestione delle transazioni | Viene illustrato come un client può inviare transazioni per ottenere dati e servizi dal server. |
Informazioni di riferimento su DDEML | Contiene il riferimento all'API. |
Funzioni DDEML
Nome | Descrizione |
---|---|
DdeAbandonTransaction | Abbandona la transazione asincrona specificata e rilascia tutte le risorse associate alla transazione. |
DdeAccessData | Fornisce l'accesso ai dati nell'oggetto DDE specificato. Un'applicazione deve chiamare la funzione DdeUnaccessData al termine dell'accesso ai dati nell'oggetto. |
DdeAddData | Aggiunge dati all'oggetto DDE specificato. Un'applicazione può aggiungere dati a partire da qualsiasi offset dall'inizio dell'oggetto. Se i nuovi dati si sovrappongono già nell'oggetto, i nuovi dati sovrascrivono i dati precedenti nei byte in cui si verifica la sovrapposizione. Il contenuto dei percorsi nell'oggetto in cui non è stato scritto non è definito. |
DdeCallback | Funzione di callback definita dall'applicazione usata con le funzioni DDEML (Dynamic Data Exchange Management Library). Elabora le transazioni DDE. Il tipo PFNCALLBACK definisce un puntatore a questa funzione di callback. DdeCallback è un segnaposto per il nome della funzione definita dall'applicazione. |
Ddeclienttransaction | Avvia una transazione di dati tra un client e un server. Solo un'applicazione client DDE può chiamare questa funzione e l'applicazione può usarla solo dopo aver stabilito una conversazione con il server. |
DdeCmpStringHandles | Confronta i valori di due handle di stringa. Il valore di un handle di stringa non è correlato al caso della stringa associata. |
Dde Connessione | Stabilisce una conversazione con un'applicazione server che supporta il nome del servizio e la coppia di nomi dell'argomento specificati. Se esistono più server di questo tipo, il sistema ne seleziona solo uno. |
Dde Connessione List | Stabilisce una conversazione con tutte le applicazioni server che supportano il nome del servizio e la coppia di nomi dell'argomento specificati. Un'applicazione può anche usare questa funzione per ottenere un elenco di handle di conversazione passando la funzione un handle di conversazione esistente. |
DdeCreateDataHandle | Crea un oggetto DDE e riempie l'oggetto con i dati del buffer specificato. Un'applicazione DDE usa questa funzione durante le transazioni che comportano il passaggio di dati all'applicazione partner. |
DdeCreateStringHandle | Crea un handle che identifica la stringa specificata. Un'applicazione client o server DDE può passare l'handle di stringa come parametro ad altre funzioni DDEML (Dynamic Data Exchange Management Library). |
DdeDisconnect | Termina una conversazione avviata dalla funzione Dde Connessione o Dde Connessione List e invalida l'handle di conversazione specificato. |
DdeDisconnectList | Elimina definitivamente l'elenco di conversazioni specificato e termina tutte le conversazioni associate all'elenco. |
DdeEnableCallback | Abilita o disabilita le transazioni per una conversazione specifica o per tutte le conversazioni attualmente stabilite dall'applicazione chiamante. |
Ddefreedatahandle | Compensi un oggetto DDE ed elimina l'handle di dati associato all'oggetto . |
DdeFreeStringHandle | Libera un handle di stringa nell'applicazione chiamante. |
DdeGetData | Copia i dati dall'oggetto DDE specificato nel buffer locale specificato. |
DdeGetLastError | Recupera il codice di errore più recente impostato dall'errore di una funzione DDEML e reimposta il codice di errore su DMLERR_NO_ERROR. |
DdeImpersonateClient | Rappresenta un'applicazione client DDE in una conversazione client DDE. |
DdeInitialize | Registra un'applicazione con Dynamic Data Exchange Management Library (DDEML). Un'applicazione deve chiamare questa funzione prima di chiamare qualsiasi altra funzione DDEML. |
DdeKeepStringHandle | Incrementa il numero di utilizzo associato all'handle specificato. Questa funzione consente a un'applicazione di salvare un handle stringa passato alla funzione di callback DDE dell'applicazione. In caso contrario, un handle stringa passato alla funzione di callback viene eliminato quando viene restituita la funzione di callback. Questa funzione deve essere usata anche per mantenere una copia di un handle di stringa a cui fa riferimento la struttura CONVINFO restituita dalla funzione DdeQueryConvInfo. |
DdeNameService | Registra o annulla la registrazione dei nomi dei servizi supportati da un server DDE. Questa funzione fa sì che il sistema invii XTYP_REGISTER o XTYP_UNREGISTER transazioni ad altre applicazioni client DDEML (Dynamic Data Exchange Management Library). |
DdePostAdvise | Invia una transazione XTYP_ADVREQ alla funzione di callback DDE dell'applicazione chiamante (server) per ogni client con un ciclo di consigli attivo sull'argomento e sull'elemento specificati. Un'applicazione server deve chiamare questa funzione ogni volta che i dati associati al nome dell'argomento o alla coppia di nomi dell'elemento cambiano. |
DdeQueryConvInfo | Recupera informazioni su una transazione DDE e sulla conversazione in cui viene eseguita la transazione. |
DdeQueryNextServer | Recupera l'handle di conversazione successivo nell'elenco di conversazioni specificato. |
DdeQueryString | Copia il testo associato a un handle di stringa in un buffer. |
DdeReconnect | Consente a un'applicazione DDEML (Dynamic Data Exchange Management Library) client di tentare di ristabilire una conversazione con un servizio che ha terminato una conversazione con il client. Quando la conversazione viene ristabilita, il DDEML tenta di ristabilire eventuali cicli di consigli preesistenti. |
DdeSetUserHandle | Associa un valore definito dall'applicazione a un handle di conversazione o a un identificatore di transazione. Ciò è utile per semplificare l'elaborazione delle transazioni asincrone. Un'applicazione può usare la funzione DdeQueryConvInfo per recuperare questo valore. |
DdeUnaccessData | Annulla l'accesso a un oggetto DDE. Un'applicazione deve chiamare questa funzione al termine dell'accesso all'oggetto. |
DdeUninitialize | Libera tutte le risorse DDEML associate all'applicazione chiamante. |
Transazioni DDEML
Nome | Descrizione |
---|---|
XTYP_ADVDATA | Informa il client che il valore dell'elemento di dati è stato modificato. La funzione di callback del client DDE, DdeCallback, riceve questa transazione dopo aver stabilito un ciclo di consigli con un server. |
XTYP_ADVREQ | Informa il server che una transazione di avviso è in sospeso per il nome dell'argomento e la coppia di nomi dell'elemento specificati e che i dati corrispondenti al nome dell'argomento e alla coppia di nomi dell'elemento sono stati modificati. Il sistema invia questa transazione alla funzione di callback DDE, DdeCallback, dopo che il server chiama la funzione DdePostAdvise. |
XTYP_ADVSTART | Un client usa la transazione XTYP_ADVSTART per stabilire un ciclo di consigli con un server. Una funzione di callback del server DDE, DdeCallback, riceve questa transazione quando un client specifica XTYP_ADVSTART come parametro wType della funzione DdeClientTransaction. |
XTYP_ADVSTOP | Un client usa la transazione XTYP_ADVSTOP per terminare un ciclo di consigli con un server. Una funzione di callback del server DDE, DdeCallback, riceve questa transazione quando un client specifica XTYP_ADVSTOP nella funzione DdeClientTransaction. |
XTYP_CONNECT | Un client usa la transazione XTYP_CONNECT per stabilire una conversazione. Una funzione di callback del server DDE, DdeCallback, riceve questa transazione quando un client specifica un nome di servizio supportato dal server (e un nome di argomento diverso da NULL) in una chiamata alla funzione Dde Connessione. |
XTYP_CONNECT_CONFIRM | Una funzione di callback del server DDE, DdeCallback, riceve la transazione XTYP_CONNECT_CONFIRM per verificare che una conversazione sia stata stabilita con un client e per fornire al server l'handle di conversazione. Il sistema invia questa transazione in seguito a una precedente transazione XTYP_CONNECT o XTYP_WILDCONNECT. |
XTYP_DISCONNECT | La funzione di callback DDE di un'applicazione, DdeCallback, riceve la transazione XTYP_DISCONNECT quando il partner dell'applicazione in una conversazione usa la funzione DdeDisconnect per terminare la conversazione. |
XTYP_ERROR | Una funzione di callback DDE, DdeCallback, riceve la transazione XTYP_ERROR quando si verifica un errore critico. |
XTYP_EXECUTE | Un client usa la transazione XTYP_EXECUTE per inviare una stringa di comando al server. Una funzione di callback del server DDE, DdeCallback, riceve questa transazione quando un client specifica XTYP_EXECUTE nella funzione DdeClientTransaction. |
XTYP_MONITOR | La funzione di callback DDE di un debugger DDE, DdeCallback, riceve la transazione XTYP_MONITOR ogni volta che si verifica un evento DDE nel sistema. Per ricevere questa transazione, un'applicazione deve specificare il valore APPCLASS_MONITOR quando chiama la funzione DdeInitialize. |
XTYP_POKE | Un client usa la transazione XTYP_POKE per inviare dati non richiesti al server. Una funzione di callback del server DDE, DdeCallback, riceve questa transazione quando un client specifica XTYP_POKE nella funzione DdeClientTransaction. |
XTYP_REGISTER | Una funzione di callback DDE, DdeCallback, riceve il tipo di transazione XTYP_REGISTER ogni volta che un'applicazione server DDEML usa la funzione DdeNameService per registrare un nome di servizio o ogni volta che viene avviata un'applicazione non DDEML che supporta l'argomento System. |
XTYP_REQUEST | Un client usa la transazione XTYP_REQUEST per richiedere i dati da un server. Una funzione di callback del server DDE, DdeCallback, riceve questa transazione quando un client specifica XTYP_REQUEST nella funzione DdeClientTransaction. |
XTYP_UNREGISTER | Una funzione di callback DDE, DdeCallback, riceve la transazione XTYP_UNREGISTER ogni volta che un'applicazione server DDEML usa la funzione DdeNameService per annullare la registrazione di un nome di servizio o ogni volta che viene terminata un'applicazione non DDEML che supporta l'argomento System. |
XTYP_WILDCONNECT | La transazione XTYP_WILDCONNECT consente a un client di stabilire una conversazione in ogni coppia nome del servizio e nome dell'argomento del server che corrispondono al nome del servizio e al nome dell'argomento specificati. Una funzione di callback del server DDE, DdeCallback, riceve questa transazione quando un client specifica un nome di servizio NULL, un nome di argomento NULL o entrambi in una chiamata alla funzione Dde Connessione o Dde Connessione List. |
XTYP_XACT_COMPLETE | Una funzione di callback client DDE, DdeCallback, riceve la transazione XTYP_XACT_COMPLETE quando una transazione asincrona, avviata da una chiamata alla funzione DdeClientTransaction, è stata completata. |
Strutture DDEML
Nome | Descrizione |
---|---|
CONVCONTEXT | Contiene informazioni fornite da un'applicazione client DDE. Le informazioni sono utili per conversazioni DDE specializzate o multilingue. |
CONVINFO | Contiene informazioni su una conversazione DDE. |
DDEML_MSG_HOOK_DATA | Contiene informazioni su un messaggio DDE e fornisce l'accesso in lettura ai dati a cui fa riferimento il messaggio. Questa struttura deve essere usata da un'applicazione di monitoraggio DDEML. |
TYPEBSTRUCT | Contiene informazioni sulla transazione DDE corrente. Un'applicazione di debug DDE può usare questa struttura durante il monitoraggio delle transazioni passate dal sistema alle funzioni di callback DDE di altre applicazioni. |
MONCONVSTRUCT | Contiene informazioni su una conversazione DDE. Un'applicazione di monitoraggio DDE può usare questa struttura per ottenere informazioni su una conversazione stabilita o terminata. |
MONERRSTRUCT | Contiene informazioni sull'errore DDE corrente. Un'applicazione di monitoraggio DDE può usare questa struttura per monitorare gli errori restituiti dalle funzioni della libreria di gestione DDE. |
MONHSZSTRUCT | Contiene informazioni su un handle stringa DDE. Un'applicazione di monitoraggio DDE può usare questa struttura durante il monitoraggio dell'attività del componente di gestione delle stringhe della libreria di gestione DDE. |
MONLINKSTRUCT | Contiene informazioni su un ciclo di consigli DDE. Un'applicazione di monitoraggio DDE può usare questa struttura per ottenere informazioni su un ciclo di consigli avviato o terminato. |
MONMSGSTRUCT | Contiene informazioni su un messaggio DDE. Un'applicazione di monitoraggio DDE può usare questa struttura per ottenere informazioni su un messaggio DDE inviato o pubblicato. |