Condividi tramite


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.