수안이의 컴퓨터 연구실

  • Mainpage
  • About Me
  • Tags
  • Metapage
  • Notice
  • Location
  • Keywords
  • Guestbook
  • Admin
  • Write an Article
  • Total | 1694855
  • Today | 600
  • Yesterday | 606

Programming/MFC2007/02/21 15:20

WM_COPYDATA 를 사용한 메세지 전송

원본 : http://www.debuglab.com/knowledge/wm_copydata.html

1.요약

서로다른 윈도우끼리(다른 프로세스에도 적용됨) 데이터를 주고 받고자 할때 윈도우에서 제공하는 WM_COPYDATA를 사용해 보기로 한다.


2.본문

하나의 윈도우에는 윈도우가 관리하는 논리적 주소공간이 있다. 이러한 이유때문에 하나의 윈도우에서 다른 윈도우로 포인터를 넘겨주고자 한다면 그리 쉬운방법이 아님을 알 수 있다. 하지만, WM_COPYDATA를 사용하면 논리적 주소공간에 상관없이 다른 윈도우로 한쪽의 논리적 주소를 넘길 수 있다. 예제를 살펴보기로 하자.


3.예제

// source window에서.. 

void CSourceWnd::Write(const void* lpBuf, UINT nCount) 

{ 

       CWnd *pTraceWnd = CWnd::FindWindow(TRACEWND_CLASSNAME, NULL); 

       if (pTraceWnd) { 

              COPYDATASTRUCT cds; 

              cds.dwData = ID_COPYDATA_TRACEMSG /* Flag 용도 */; 

              cds.cbData = nCount; 

              cds.lpData = (void*)lpBuf; 

              pTraceWnd->SendMessage(WM_COPYDATA, 

                     (WPARAM)AfxGetApp()->m_pMainWnd->GetSafeHwnd(), 

                     (LPARAM)&cds); 



       } else { 

              AfxMessageBox("윈도우를 찾을 수 없습니다."); 

       } 

} 



---------------------------------------------------------- 

////////////////////////////////////////////////////// 

// target windows에서.. 



// 메세지 핸들링 설치 

BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd) 

       //{{AFX_MSG_MAP(CMainFrame) 

       ON_MESSAGE(WM_COPYDATA, OnTraceMsg) 

       . 

       . 

       . 

       //}}AFX_MSG_MAP 

END_MESSAGE_MAP() 





LRESULT CMainFrame::OnTraceMsg(WPARAM wParam, LPARAM lParam) 

{ 

       COPYDATASTRUCT* pcds = (COPYDATASTRUCT*)lParam; 



       // pcds 를 사용한다.. 



       return 0; 

} 


4.참고

MSJ 1996년 1월호 C/C++ Q&A



- 2001.08.06 Smile Seo -
"MFC" 카테고리의 다른 글
  • 256색 이상의 Bitmap ImageList 만들기 (0)2007/02/21
  • 사용하지 않는 인자에 대한 warning 없애기 (0)2007/02/21
  • WM_COPYDATA 를 사용한 메세지 전송 (0)2007/02/21
  • ATOM을 이용한 프로세스간 데이터 공유 (0)2007/02/21
  • ToolBar에서 256이상의 Color사용 (0)2007/02/21
2007/02/21 15:20 2007/02/21 15:20
Posted by webdizen
Tags WM_COPYDATA
No Trackback No Comment

Trackback URL : http://www.webdizen.net/blog/trackback/2612

Leave your greetings.

[로그인][오픈아이디란?]

«Prev  1 ... 636 637 638 639 640 641 642 643 644 ... 3009  Next»

RSS HanRSS
Blog Image
webdizen
이곳은 컴퓨터에 대해 연구하고, 공유하고, 소통하기 위한 연구실입니다. 개인적으로는 OLAP, Data Mining, Semantic Web, Data Modeling에 대해서 연구하고 있습니다.

Categories

전체 (3009)
Webdizen (141)
Life (6)
Diary (16)
Blog (9)
IDEA (2)
Travel (10)
Book (16)
Photo (7)
Movie (8)
Music (14)
Leisure Sports (10)
Funny (6)
Hardware (121)
Software (120)
Windows (5)
Unix & Linux (120)
Installation (5)
Kernel (10)
System (34)
Develop (22)
X-Window (0)
Applicaton (31)
Security (4)
Framework (2)
Hadoop (2)
Programming (804)
Algorithm & Data Structure (1)
Assembly (38)
UNIX/Linux C (95)
C++ (128)
STL (4)
Java (38)
Win32 API (92)
ATL/COM (44)
MFC (151)
.NET (26)
WCF/WPF (4)
C# (28)
Network Programming (17)
Database Programming (12)
OpenGL / DirectX (13)
Multimedia Programming (0)
Game Programming (21)
Parallel Distributed Progra... (0)
Reverse Engineering (0)
Debugging (9)
Python (1)
Ruby (1)
Ruby on Rails (1)
QT (4)
GTK (0)
JSP (0)
PHP (6)
ASP.NET (6)
ASP (2)
Development (28)
Useful Library (2)
Data Modeling (0)
Database (105)
Oracle (4)
MSSQL (41)
MySQL (2)
Data Warehouse (2)
Data Mining (4)
Network (66)
Web (79)
DHTML (4)
XHTML (1)
Javascript (1)
CSS (1)
AJAX (9)
XML (11)
Flex (1)
Silverlight (3)
Security (91)
DoS (1)
Kernel (10)
Scanning (3)
Sniffing (0)
Spoofing (4)
Overflow (28)
Web (11)
Shell (10)
Format String (14)
Window (2)
Embedded (70)
Multimedia (27)
Mobile (14)
Graphic (24)
Management (633)
Knowledge (581)
Hadoop (0)

Notice

  • 메타 블로그 사이트에 등록
  • 새해 맞이 블로그의 변화
  • 블로그 명칭 변경
  • 도메인(www.webdizen.net) 구...
  • TEXTCUBE 1.6.1로 업그레이드...

Tags

  • EJB
  • WebOS
  • 다트
  • 스크린 샷
  • 사격
  • 크래킹
  • 아이콘
  • Swing
  • Template
  • 전쟁
  • 함수 포인터
  • other Gecko engine
  • 이터레이터
  • 보안 솔루션
  • SendMessage()
  • 동적 SQL
  • Register
  • DB2
  • 분산 프로세스
  • PHP

Recent Articles

  • 트위터(Twitter)의 시작!.
  • 청년 리더의 조건.
  • 애플의 타블렛 PC - 아이패드....
  • 미래의 인터페이스 - 육감 기....
  • 기초발성법 동영상 강좌.

Recent Comments

  • 경청... 너무나 중요한데.......
    webdizen 14:59
  • 학교 과제물중 쓰레드에 대하....
    장진혁 03/17
  • 관리자만 볼 수 있는 댓글입....
    비밀방문자 03/12
  • 상대방의 이야기를 열심히 경....
    DoNuts 03/03
  • 좋은글 잘 보고 갑니다..
    Und_hacker 01/08

Recent Trackbacks

  • printf,scanf를 이용한 형식....
    yundream의 프로그래밍 이야기 03/10
  • 파일 열기/저장하기 CFileDialog.
    은마군의 나태블록 2009
  • World IT Show 2008.
    상우 :: Oranzie's BLOG 2008
  • cvs서버 설치하기.
    3인3색 2008
  • 속속 공개되는 Google Chart....
    PHP와 Web 2.0 2007

Archive

  • 2010/02 (1)
  • 2010/01 (6)
  • 2009/12 (5)
  • 2009/09 (3)
  • 2009/08 (1)

Calendar

«   2010/03   »
일 월 화 수 목 금 토
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

Bookmarks

    • Administration
      • IIS.NET
      • NTFAQ
      • OS의 모든 것
      • 리눅스포털
    • Database
      • SQL Server Central
      • SQL Team
    • Development
      • .NET Heaven
      • ASP Alliance
      • ASP.NET 2.0
      • Bullog.net
      • C# Corner
      • C++ (C PlusPlus.com)
      • C++ Reference
      • CodeGuru
      • CodePlex
      • DebugLab
      • Dev Articles
      • Devpia
      • DotNet Junkies
      • DotNet Zone
      • Driver Online
      • GOSU.NET
      • HOONS 닷넷
      • Joinc 팀블로그
      • KOSR
      • MSDN Home Page
      • OSR Online
      • Sky.ph - 개발자 커뮤니...
      • TAEYO.NET
      • The Code Project
      • WindowsClient.net
      • 김상욱의 개발자 Side
      • 조인시 위키
    • Human Networks
      • belief21c's e-space
      • I think I can
      • Invisible Rover's Blog :D
      • Polarux - Linuxing
      • Rodman®
      • 까만 나비
      • 나를 가꾸는 시간.
      • 단녕
      • 상우 :: Oranzie's BLOG
    • Information Technology
      • Microsoft TechNet
      • 지디넷코리아 - 글로벌...
    • Security
      • FoundStone
      • milw0rm
      • NewOrder
      • OpenRCE
      • Phrack.org
      • Reverse Engineering b1...
      • Reverse Engineering Team
      • RootKit
      • SecurityFocus
      • SecurityXploded by Nag...
      • Wow Hacker
      • Zone-H
Textcube
Louice Studio Inc.
Powered by Textcube. Original designed by Tistory.