Udostępnij przez


Dynamiczna biblioteka zarządzania programem Data Exchange

Dynamic Data Exchange (DDE) to forma komunikacji międzyprocesowej, która używa pamięci udostępnionej do wymiany danych między aplikacjami. Aplikacje mogą używać funkcji DDE na potrzeby jednorazowych transferów danych oraz bieżących wymiany i aktualizowania danych.

W tej sekcji

Nazwa Opis
Informacje o DDEML Omówienie dynamicznej wymiany danych.
podstawowe pojęcia Omówienie kluczowych pojęć dotyczących dynamicznej wymiany danych.
zarządzania konwersacjami Omówienie konwersacji między klientem a serwerem.
zarządzanie danymi Omówienie sposobu przekazywania danych przez obiekty pamięci z jednej aplikacji do innej.
aplikacji monitorowania Omówienie sposobu użycia elementów biblioteki dynamicznej zarządzania programem Data Exchange w celu utworzenia aplikacji, która monitoruje aktywność dynamicznej wymiany danych w systemie.
usługi nazw W tym artykule omówiono, w jaki sposób biblioteka dynamicznego zarządzania programem Data Exchange umożliwia aplikacji serwera rejestrowanie nazw usług, które obsługuje.
zarządzania transakcjami Omówienie sposobu wysyłania transakcji przez klienta w celu uzyskania danych i usług z serwera.
dokumentacja DDEML Zawiera dokumentację interfejsu API.

Funkcje DDEML

Nazwa Opis
DdeAbandonTransaction Porzuca określoną transakcję asynchroniczną i zwalnia wszystkie zasoby skojarzone z transakcją.
DdeAccessData Zapewnia dostęp do danych w określonym obiekcie DDE. Aplikacja musi wywołać funkcję DdeUnaccessData po zakończeniu uzyskiwania dostępu do danych w obiekcie.
DdeAddData Dodaje dane do określonego obiektu DDE. Aplikacja może dodawać dane rozpoczynające się od dowolnego przesunięcia od początku obiektu. Jeśli nowe dane nakładają się już na dane w obiekcie, nowe dane zastępują stare dane w bajtach, w których występuje nakładanie. Zawartość lokalizacji w obiekcie, do których nie zapisano, jest niezdefiniowana.
DdeCallback Funkcja wywołania zwrotnego zdefiniowana przez aplikację używana z funkcjami Dynamic Data Exchange Management Library (DDEML). Przetwarza transakcje DDE. Typ PFNCALLBACK definiuje wskaźnik dla tej funkcji wywołania zwrotnego. DdeCallback jest symbolem zastępczym nazwy funkcji zdefiniowanej przez aplikację.
DdeClientTransaction Rozpoczyna transakcję danych między klientem a serwerem. Tylko aplikacja kliencka DDE może wywołać tę funkcję, a aplikacja może jej używać tylko po nawiązaniu rozmowy z serwerem.
DdeCmpStringHandles Porównuje wartości dwóch dojść ciągów. Wartość dojścia ciągu nie jest powiązana z przypadkiem skojarzonego ciągu.
DdeConnect Ustanawia konwersację z aplikacją serwera, która obsługuje określoną nazwę usługi i parę nazw tematów. Jeśli istnieje więcej niż jeden taki serwer, system wybiera tylko jeden.
DdeConnectList Ustanawia konwersację ze wszystkimi aplikacjami serwera, które obsługują określoną nazwę usługi i parę nazw tematów. Aplikacja może również użyć tej funkcji, aby uzyskać listę dojść do konwersacji, przekazując funkcję istniejącą dojścia konwersacji.
DdeCreateDataHandle Tworzy obiekt DDE i wypełnia obiekt danymi z określonego buforu. Aplikacja DDE używa tej funkcji podczas transakcji, które obejmują przekazywanie danych do aplikacji partnerskiej.
DdeCreateStringHandle Tworzy uchwyt identyfikujący określony ciąg. Aplikacja klienta lub serwera DDE może przekazać dojście ciągu jako parametr do innych funkcji dynamicznej biblioteki zarządzania exchange danych (DDEML).
DdeDisconnect Przerywa konwersację rozpoczętą przez funkcję DdeConnect lub DdeConnectList i unieważnia określoną obsługę konwersacji.
DdeDisconnectList Niszczy określoną listę konwersacji i kończy wszystkie konwersacje skojarzone z listą.
DdeEnableCallback Włącza lub wyłącza transakcje dla określonej konwersacji lub dla wszystkich konwersacji obecnie ustanowionych przez aplikację wywołującą.
DdeFreeDataHandle Pobiera opłaty za obiekt DDE i usuwa uchwyt danych skojarzony z obiektem.
DdeFreeStringHandle Zwalnia uchwyt ciągu w aplikacji wywołującej.
DdeGetData Kopiuje dane z określonego obiektu DDE do określonego buforu lokalnego.
DdeGetLastError Pobiera najnowszy kod błędu ustawiony przez błąd funkcji DDEML i resetuje kod błędu, aby DMLERR_NO_ERROR.
DdeImpersonateClient Personifikuje aplikację kliencką DDE w konwersacji klienta DDE.
DdeInitialize Rejestruje aplikację w bibliotece dynamicznej zarządzania programem Data Exchange (DDEML). Aplikacja musi wywołać tę funkcję przed wywołaniem dowolnej innej funkcji DDEML.
DdeKeepStringHandle Zwiększa liczbę użycia skojarzona z określonym dojściem. Ta funkcja umożliwia aplikacji zapisanie dojścia ciągu przekazanego do funkcji wywołania zwrotnego DDE aplikacji. W przeciwnym razie po powrocie funkcji wywołania zwrotnego zostanie usunięta obsługa ciągu przekazana do funkcji wywołania zwrotnego. Ta funkcja powinna również służyć do przechowywania kopii dojścia ciągu, do którego odwołuje się CONVINFO struktura zwracana przez funkcjęDdeQueryConvInfo.
DdeNameService Rejestruje lub wyrejestrowuje nazwy usług obsługiwane przez serwer DDE. Ta funkcja powoduje, że system wysyła transakcje XTYP_REGISTER lub XTYP_UNREGISTER do innych uruchomionych aplikacji klienckich dynamicznej biblioteki zarządzania exchange danych (DDEML).
DdePostAdvise Wysyła transakcję XTYP_ADVREQ do funkcji wywołania zwrotnego DDE aplikacji wywołującej (serwer) dla każdego klienta z aktywną pętlą porad w określonym temacie i elemencie. Aplikacja serwera powinna wywoływać tę funkcję za każdym razem, gdy zmienią się dane skojarzone z nazwą tematu lub parą nazw elementów.
DdeQueryConvInfo Pobiera informacje o transakcji DDE i konwersacji, w której odbywa się transakcja.
DdeQueryNextServer Pobiera następny uchwyt konwersacji na określonej liście konwersacji.
DdeQueryString Kopiuje tekst skojarzony z uchwytem ciągu do buforu.
DdeReconnect Umożliwia aplikacji dynamicznej biblioteki zarządzania exchange danych klienta (DDEML) podjęcie próby ponownego opublikowania konwersacji z usługą, która zakończyła konwersację z klientem. Gdy rozmowa zostanie ponownie wydana, DDEML próbuje ponownie opublikować wszelkie istniejące pętle porad.
DdeSetUserHandle Kojarzy wartość zdefiniowaną przez aplikację z uchwytem konwersacji lub identyfikatorem transakcji. Jest to przydatne w przypadku uproszczenia przetwarzania transakcji asynchronicznych. Aby pobrać tę wartość, aplikacja może użyć funkcjiDdeQueryConvInfo.
DdeUnaccessData Nie uzyskuje dostępu do obiektu DDE. Aplikacja musi wywołać tę funkcję po zakończeniu uzyskiwania dostępu do obiektu.
DdeUninitialize Zwalnia wszystkie zasoby DDEML skojarzone z aplikacją wywołującą.

Transakcje DDEML

Nazwa Opis
XTYP_ADVDATA Informuje klienta o zmianie wartości elementu danych. Funkcja wywołania zwrotnego klienta DDE, DdeCallback, odbiera tę transakcję po ustanowieniu pętli porad z serwerem.
XTYP_ADVREQ Informuje serwer, że transakcja doradcy jest zaległa w określonej parze nazwy tematu i nazwy elementu oraz że dane odpowiadające nazwie tematu i parze nazw elementów uległy zmianie. System wysyła tę transakcję do funkcji wywołania zwrotnego DDE, DdeCallback, po wywołaniu przez serwer funkcji DdePostAdvise.
XTYP_ADVSTART Klient używa transakcji XTYP_ADVSTART do ustanowienia pętli doradcy z serwerem. Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera tę transakcję, gdy klient określa XTYP_ADVSTART jako parametr wType funkcji DdeClientTransaction.
XTYP_ADVSTOP Klient używa transakcji XTYP_ADVSTOP, aby zakończyć pętlę doradcy z serwerem. Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera tę transakcję, gdy klient określa XTYP_ADVSTOP w funkcji DdeClientTransaction.
XTYP_CONNECT Klient używa transakcji XTYP_CONNECT do nawiązania konwersacji. Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera tę transakcję, gdy klient określa nazwę usługi obsługiwaną przez serwer (i nazwę tematu, która nie jest null) w wywołaniu funkcji DdeConnect.
XTYP_CONNECT_CONFIRM Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera transakcję XTYP_CONNECT_CONFIRM, aby potwierdzić, że konwersacja została nawiązana z klientem i zapewnić serwerowi obsługę konwersacji. System wysyła tę transakcję w wyniku poprzedniej transakcji XTYP_CONNECT lub XTYP_WILDCONNECT.
XTYP_DISCONNECT Funkcja wywołania zwrotnego DDE aplikacji DdeCallback odbiera transakcję XTYP_DISCONNECT, gdy partner aplikacji w konwersacji używa funkcji DdeDisconnect w celu zakończenia konwersacji.
XTYP_ERROR Funkcja wywołania zwrotnego DDE, DdeCallback, odbiera transakcję XTYP_ERROR, gdy wystąpi błąd krytyczny.
XTYP_EXECUTE Klient używa transakcji XTYP_EXECUTE do wysyłania ciągu polecenia do serwera. Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera tę transakcję, gdy klient określa XTYP_EXECUTE w funkcji DdeClientTransaction.
XTYP_MONITOR Funkcja wywołania zwrotnego DDE debugera DDE, DdeCallback, odbiera transakcję XTYP_MONITOR za każdym razem, gdy w systemie wystąpi zdarzenie DDE. Aby odebrać tę transakcję, aplikacja musi określić wartość APPCLASS_MONITOR podczas wywoływania funkcji DdeInitialize.
XTYP_POKE Klient używa transakcji XTYP_POKE do wysyłania niechcianych danych na serwer. Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera tę transakcję, gdy klient określa XTYP_POKE w funkcji DdeClientTransaction.
XTYP_REGISTER Funkcja wywołania zwrotnego DDE, DdeCallback, odbiera typ transakcji XTYP_REGISTER za każdym razem, gdy aplikacja serwera DDEML używa funkcji DdeNameService do rejestrowania nazwy usługi lub za każdym razem, gdy aplikacja innej niż DDEML, która obsługuje temat System jest uruchamiany.
XTYP_REQUEST Klient używa transakcji XTYP_REQUEST do żądania danych z serwera. Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera tę transakcję, gdy klient określa XTYP_REQUEST w funkcji DdeClientTransaction.
XTYP_UNREGISTER Funkcja wywołania zwrotnego DDE, DdeCallback, odbiera transakcję XTYP_UNREGISTER za każdym razem, gdy aplikacja serwera DDEML używa funkcji DdeNameService do wyrejestrowania nazwy usługi lub za każdym razem, gdy aplikacja innej niż DDEML, która obsługuje temat systemowy, zostanie zakończona.
XTYP_WILDCONNECT Transakcja XTYP_WILDCONNECT umożliwia klientowi nawiązanie konwersacji na każdej z par nazw usługi i nazwy tematu serwera, które są zgodne z określoną nazwą usługi i nazwą tematu. Funkcja wywołania zwrotnego serwera DDE, DdeCallback, odbiera tę transakcję, gdy klient określa nazwę usługi NULL, nazwę tematu NULL lub obie te elementy w wywołaniu DdeConnectConnectList lub funkcji DdeConnectList.
XTYP_XACT_COMPLETE Funkcja wywołania zwrotnego klienta DDE, DdeCallback, odbiera transakcję XTYP_XACT_COMPLETE, gdy transakcja asynchroniczna zainicjowana przez wywołanie funkcji DdeClientTransaction została ukończona.

Struktury DDEML

Nazwa Opis
CONVCONTEXT Zawiera informacje dostarczane przez aplikację kliencką DDE. Informacje te są przydatne w przypadku wyspecjalizowanych lub międzyjęzycznych konwersacji DDE.
CONVINFO Zawiera informacje o konwersacji DDE.
DDEML_MSG_HOOK_DATA Zawiera informacje o komunikacie DDE i zapewnia dostęp do odczytu do danych, do których odwołuje się komunikat. Ta struktura ma być używana przez aplikację monitorowania DDEML.
MONCBSTRUCT Zawiera informacje o bieżącej transakcji DDE. Aplikacja debugowania DDE może używać tej struktury podczas monitorowania transakcji, które system przekazuje do funkcji wywołania zwrotnego DDE innych aplikacji.
MONCONVSTRUCT Zawiera informacje o konwersacji DDE. Aplikacja monitorowania DDE może używać tej struktury do uzyskiwania informacji o konwersacji, która została ustanowiona lub została zakończona.
MONERRSTRUCT Zawiera informacje o bieżącym błędzie DDE. Aplikacja monitorowania DDE może używać tej struktury do monitorowania błędów zwracanych przez funkcje biblioteki zarządzania DDE.
MONHSZSTRUCT Zawiera informacje o dojściu ciągu DDE. Aplikacja monitorowania DDE może używać tej struktury podczas monitorowania działania składnika menedżera ciągów biblioteki zarządzania DDE.
MONLINKSTRUCT Zawiera informacje o pętli doradcy DDE. Aplikacja do monitorowania DDE może używać tej struktury do uzyskiwania informacji o pętli porad, która została uruchomiona lub zakończona.
MONMSGSTRUCT Zawiera informacje o komunikacie DDE. Aplikacja monitorowania DDE może używać tej struktury do uzyskiwania informacji na temat komunikatu DDE, który został wysłany lub opublikowany.