PostMessage

¿øÇü

LRESULT PostMessage(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);

Àμö

¢ºhWnd : ¸Þ½ÃÁö¸¦ ¹ÞÀ» À©µµ¿ì ÇÚµé. HWND_BROADCASTÀÏ °æ¿ì ¸ðµç ÃÖ»óÀ§ À©µµ¿ì¿¡°Ô º¸³»Áø´Ù. ¼û°ÜÁø À©µµ¿ì³ª »ç¿ë±ÝÁöµÈ À©µµ¿ìµµ Æ÷ÇÔµÇ¸ç ¿À¹ö·¦µå, Æ˾÷ À©µµ¿ìµµ Æ÷ÇԵȴÙ. ´Ü Â÷Àϵå À©µµ¿ì¿¡°Ô´Â º¸³»ÁöÁö ¾Ê´Â´Ù. NULLÀÏ °æ¿ì PostThreadMessage ÇÔ¼ö¿Í °°¾ÆÁö¸ç ƯÁ¤ÇÑ ´ë»ó À©µµ¿ì¾øÀÌ ½º·¹µå¿¡°Ô ¸Þ½ÃÁö¸¦ º¸³½´Ù.

¢ºMsg : ºÙÀÏ ¸Þ½ÃÁö

¢ºwParam : ¸Þ½ÃÁö Ãß°¡ Á¤º¸. ¸Þ½ÃÁö¿¡ µû¶ó Àǹ̰¡ ´Þ¶óÁø´Ù.

¢ºlParam : ¸Þ½ÃÁö Ãß°¡ Á¤º¸.

¸®ÅÏ

¸Þ½ÃÁö ºÙÀ̱⿡ ¼º°øÇϸé 0ÀÌ ¾Æ´Ñ °ªÀ» ¸®ÅÏÇÑ´Ù.

¼³¸í

¸Þ½ÃÁö¸¦ ÇØ´ç À©µµ¿ìÀÇ ¸Þ½ÃÁö Å¥¿¡ ºÙÀ̸ç Áï½Ã ¸®ÅÏÇÑ´Ù. ÀÌ·¸°Ô ºÙ¿©Áø ¸Þ½ÃÁö´Â ¸Þ½ÃÁö ·çÇÁÀÇ GetMessage ÇÔ¼ö¿¡ ÀÇÇØ ²¨³»Á®¼­ DiepatchMessage ÇÔ¼ö¿¡ ÀÇÇØ À©µµ¿ì ÇÁ·Î½ÃÀú·Î º¸³»Áö¸ç ÃÖÁ¾ÀûÀ¸·Î À©µµ¿ì ÇÁ·Î½ÃÀú¿¡ ÀÇÇØ Ã³¸®µÈ´Ù.

SendMessage¿Í´Â ´Þ¸® ¸Þ½ÃÁö¸¦ Å¥¿¡ ºÙÀÎ ÈÄ °ð¹Ù·Î ¸®ÅÏÇϹǷΠÀÌ ¸Þ½ÃÁö´Â °ð¹Ù·Î 󸮵ÇÁö ¾ÊÀ¸¸ç ¸Þ½ÃÁö¸¦ ºÙÀÎ ½º·¹µå´Â °ð¹Ù·Î ´Ù¸¥ ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Ù.

¸Þ½ÃÁö¸¦ ºÙÀÌ´Â ½ÃÁ¡°ú ¸Þ½ÃÁö¸¦ ó¸®ÇÏ´Â ½ÃÁ¡ÀÌ ºñµ¿±âÀûÀ̱⠶§¹®¿¡ PostMessageÀÇ wParam, lParamÀ¸·Î Æ÷ÀÎÅ͸¦ Àü´ÞÇÏ´Â °ÍÀº Àǹ̰¡ ¾ø´Ù. ¸Þ½ÃÁö¸¦ ºÙÀÏ ¶§ Á¸ÀçÇÏ´ø °ªÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇÏ´Â ½ÃÁ¡¿¡¼­´Â »ç¶óÁú ¼ö Àֱ⠶§¹®ÀÌ´Ù. ƯÈ÷ WM_COPYDATA ¸Þ½ÃÁö´Â ÀÓ½ÃÀûÀÎ µ¥ÀÌÅ͸¦ Àü¿ª °øÀ¯ ¸Þ¸ð¸®¿¡ »ý¼ºÇÑ ÈÄ Àü´ÞÇϴµ¥ ÀÌ ¸Þ½ÃÁö´Â Àý´ë·Î PostMessage·Î ºÙÀÏ ¼ö ¾øÀ¸¸ç SendMessage·Î¸¸ º¸³»¾ß ÇÑ´Ù.

PostMessage È£ÃâÀÇ ¾ÆÁÖ Æ¯¼öÇÑ °æ¿ì·Î ù¹ø° Àμö°¡ NULLÀÏ ¼öµµ Àִµ¥ ÀÌ °æ¿ì´Â ƯÁ¤ À©µµ¿ì¿¡°Ô ¸Þ½ÃÁö¸¦ ºÙÀÌ´Â °ÍÀÌ ¾Æ´Ï¶ó ÀÀ¿ë ÇÁ·Î±×·¥ Àü¹Ý¿¡ °ÉÄ£ ÀÛ¾÷ Áö½Ã¸¦ º¸³»´Â °æ¿ìÀÌ´Ù. ´ë»ó À©µµ¿ì°¡ ¾ø±â ¶§¹®¿¡ ÀÌ·¸°Ô ºÙ¿©Áø ¸Þ½ÃÁö´Â À©µµ¿ì ÇÁ·Î½ÃÀú±îÁö Àü´ÞµÇÁö ¾ÊÀ¸¸ç ¸Þ½ÃÁö ·çÇÁ¿¡¼­ Á÷Á¢ ó¸®ÇØ¾ß ÇÑ´Ù. À̶§ÀÇ ¸Þ½ÃÁö ·çÇÁ´Â ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇÑ´Ù.

while(GetMessage(&Message,0,0,0)) {
	if (Message.message==WM_SOME) {
		// Á÷Á¢ ó¸®
	} else {
		TranslateMessage(&Message);
		DispatchMessage(&Message);
	}
}

GetMessage·Î ÀÐÀº ¸Þ½ÃÁö°¡ ´ë»ó À©µµ¿ì°¡ ¾ø´Â ½º·¹µå Àü¹Ý¿¡ °ÉÄ£ ¸Þ½ÃÁöÀ̹ǷΠDispatchMessage¸¦ È£ÃâÇϱâ Àü¿¡ while·çÇÁ ³»ºÎ¿¡¼­ Á÷Á¢ ó¸®ÇØ ÁÖ¾î¾ß ÇÑ´Ù.

Âü°íÇÔ¼ö

SendMessage : ¸Þ½ÃÁö¸¦ Å¥¸¦ °ÅÄ¡Áö ¾Ê°í Á÷Á¢ À©µµ¿ì ÇÁ·Î½ÃÀú·Î º¸³» ó¸®Çϵµ·Ï ÇÑ´Ù.

PostThreadMessage

Ç÷¿Æû

95ÀÌ»ó

º»¹®ÂüÁ¶

 


written by http://www.winapi.co.kr