다음을 통해 공유


WM_DDE_DATA 메시지

DDE(동적 데이터 교환) 서버 애플리케이션은 DDE 클라이언트 애플리케이션에 WM_DDE_DATA 메시지를 게시하여 데이터 항목을 클라이언트에 전달하거나 클라이언트에 데이터 항목의 가용성을 알립니다.

이 메시지를 게시하려면 다음 매개 변수를 사용하여 PostMessage 함수를 호출합니다.

#define WM_DDE_DATA        0x03E05

매개 변수

wParam

메시지를 게시하는 서버 창에 대한 핸들입니다.

lParam

낮은 순서 단어는 데이터 및 추가 정보가 포함된 DDEDATA 구조를 포함하는 전역 메모리 개체에 대한 핸들입니다. 서버가 웜 데이터 링크 중에 데이터 항목 값이 변경되었음을 클라이언트에 알리는 경우 핸들을 NULL 로 설정해야 합니다. fDeferUpd 비트가 설정된 WM_DDE_ADVISE 메시지를 보내는 클라이언트에 의해 웜 링크가 설정됩니다.

상위 단어에는 데이터 또는 알림이 전송되는 데이터 항목을 식별하는 원자가 포함되어 있습니다.

설명

게시

서버 애플리케이션은 GlobalAlloc 함수를 사용하여 전역 메모리 개체를 할당합니다. GlobalAddAtom 함수를 사용하여 원자를 할당합니다.

서버는 PackDDElParam 함수 또는 ReuseDDElParam 함수를 호출하여 WM_DDE_DATAlParam 매개 변수를 만들거나 다시 사용해야 합니다.

수신(클라이언트) 애플리케이션이 음수 WM_DDE_ACK 메시지로 응답하는 경우 게시(서버) 애플리케이션은 전역 메모리 개체를 삭제해야 합니다. 그렇지 않으면 클라이언트는 UnpackDDElParam 함수를 호출하여 콘텐츠를 추출한 후 개체를 삭제해야 합니다.

서버 애플리케이션이 DDEDATA 구조체의 fRelease 멤버를 FALSE로 설정하는 경우 서버는 긍정 또는 부정 승인을 받으면 개체를 삭제해야 합니다.

서버 애플리케이션은 DDEDATA 구조체의 fAckReqfRelease 멤버를 모두 FALSE로 설정해서는 안 됩니다. 두 멤버가 모두 FALSE로 설정된 경우 서버에서 개체를 삭제할 시기를 결정할 수 없습니다.

수신

fAckReqTRUE인 경우 클라이언트 애플리케이션은 WM_DDE_ACK 메시지를 게시하여 긍정적 또는 부정적으로 응답해야 합니다. WM_DDE_ACK 게시할 때 클라이언트는 원자를 다시 사용하거나 삭제하고 새 원자를 만들 수 있습니다.

클라이언트는 PackDDElParam 함수 또는 ReuseDDElParam 함수를 호출하여 WM_DDE_ACKlParam 매개 변수를 만들거나 다시 사용해야 합니다.

fAckReqFALSE이면 클라이언트 애플리케이션에서 원자를 삭제해야 합니다.

게시 애플리케이션이 전역 메모리 개체를 NULL로 지정한 경우 수신 애플리케이션은 WM_DDE_REQUEST 메시지를 게시하여 서버에 데이터를 보내도록 요청할 수 있습니다.

전역 메모리 개체가 NULL이 아닌 WM_DDE_DATA 메시지를 처리한 후 다음 조건 중 하나가 충족되지 않는 한 클라이언트는 개체를 해제해야 합니다.

  • fRelease 멤버가 FALSE입니다.
  • fRelease 멤버는 TRUE이지만 클라이언트 애플리케이션은 부정적인 WM_DDE_ACK 메시지로 응답합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버
Windows 2000 Server[데스크톱 앱만]
헤더
Dde.h(Windows.h 포함)

추가 정보

참조

DDEDATA

FreeDDElParam

GlobalAddAtom

PackDDElParam

PostMessage

ReuseDDElParam

SendMessage

UnpackDDElParam

WM_DDE_ACK

WM_DDE_ADVISE

WM_DDE_POKE

WM_DDE_REQUEST

개념

동적 데이터 교환 정보