다음을 통해 공유


WM_DDE_POKE 메시지

DDE(동적 데이터 교환) 클라이언트 애플리케이션은 DDE 서버 애플리케이션에 WM_DDE_POKE 메시지를 게시합니다. 클라이언트는 이 메시지를 사용하여 서버에 원치 않는 데이터 항목을 수락하도록 요청합니다. 서버는 데이터 항목을 수락했는지 여부를 나타내는 WM_DDE_ACK 메시지와 함께 회신해야 합니다.

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

#define WM_DDE_POKE        0x03E7

매개 변수

wParam

메시지를 게시하는 클라이언트 창에 대한 핸들입니다.

lParam

낮은 순서의 단어는 데이터 및 추가 정보가 포함된 DDEPOKE 구조를 포함하는 전역 메모리 개체에 대한 핸들입니다.

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

설명

게시

클라이언트 애플리케이션은 GlobalAlloc 함수를 사용하여 전역 메모리 개체에 대한 메모리를 할당해야 합니다. 다음 조건 중 하나가 true인 경우 클라이언트 애플리케이션에서 개체를 삭제해야 합니다.

  • 서버 애플리케이션은 음의 WM_DDE_ACK 메시지로 응답합니다.
  • fRelease 멤버는 FALSE이지만 서버 애플리케이션은 양수 또는 음수 WM_DDE_ACK 응답합니다.

클라이언트 애플리케이션은 GlobalAddAtom 함수를 사용하여 원자를 만들어야 합니다.

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

수신

서버 애플리케이션은 긍정적 또는 부정적으로 응답하기 위해 WM_DDE_ACK 메시지를 게시해야 합니다. WM_DDE_ACK 게시할 때 서버는 원자를 다시 사용하거나 삭제하고 새 원자를 만들 수 있습니다.

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

전역 메모리 개체를 해제하려면 서버에서 GlobalFree 함수를 호출해야 합니다. 또한 데이터 형식이 CF_DSPMETAFILEPICT 또는 CF_METAFILEPICT 경우 서버는 포함된 메타파일 핸들을 사용하여 DeleteMetaFile 도 호출해야 합니다. 이러한 두 형식에는 추가 수준의 간접 참조가 있습니다. 즉, 애플리케이션은 개체를 잠가 핸들에 대한 포인터를 가져오고, 해당 핸들을 잠가 METAFILEPICT 구조체에 대한 포인터를 가져오고, 마지막으로 METAFILEPICT 구조체의 hMF 멤버에서 핸들을 사용하여 DeleteMetaFile을 호출해야 합니다.

개체를 해제하려면 서버에서 FreeDDElParam 함수를 호출해야 합니다.

요구 사항

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

추가 정보

참조

DDEPOKE

FreeDDElParam

GlobalAddAtom

METAFILEPICT

PackDDElParam

PostMessage

ReuseDDElParam

SendMessage

UnpackDDElParam

WM_DDE_ACK

개념

동적 데이터 교환 정보