Àμö |
wParam : ¾î¶² ¼³Á¤ÀÌ º¯°æµÇ¾ú´ÂÁö¸¦ ³ªÅ¸³½´Ù. SystemParametersInfo ÇÔ¼ö¿¡ ÀÇÇØ ÀÌ ¸Þ½ÃÁö°¡ ¹ß»ýµÇ¾ú´Ù¸é wParamÀº ÆĶó¹ÌÅÍ Ç÷¡±×°¡ µÈ´Ù. Á¤Ã¥ º¯°æ¿¡ ÀÇÇØ ÀÌ ¸Þ½ÃÁö°¡ ¹ß»ýµÈ °æ¿ì wParamÀº 1(ÄÄÇ»ÅÍ Á¤Ã¥ º¯°æ) ¶Ç´Â 0(»ç¿ëÀÚ Á¤Ã¥ º¯°æ) Áß Çϳª°¡ µÈ´Ù. ·ÎÄÉÀÏ ¼³Á¤ÀÌ º¯°æµÇ¾úÀ¸¸é wParamÀº 0À̸ç ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÀÌ ¸Þ½ÃÁö¸¦ Á÷Á¢ º¸³Â´Ù¸é NULLÀÌ µÈ´Ù. lParam : º¯°æµÈ ½Ã½ºÅÛ ÆĶó¹ÌÅÍÀÇ À̸§ ¹®ÀÚ¿ÀÌ´Ù. ·¹Áö½ºÆ®¸®ÀÇ Å° À̸§À̳ª Win.ini ÀÇ ¼½¼Ç À̸§ÀÌ Àü´ÞµÈ´Ù. ±×·¯³ª ·¹Áö½ºÆ®¸® Å°ÀÏ °æ¿ì Àüü °æ·Î°¡ ¾Æ´Ï¶ó ´Ü¼øÈ÷ Å°ÀÇ À̸§¸¸ Àü´ÞµÇ¸ç ¼³Á¤À» º¯°æÇÏ´Â ÇÁ·Î±×·¥ÀÌ ÀÌ Àμö¿¡ Á¤È®ÇÏ°Ô °ªÀ» ´ëÀÔÇØ ÁÖÁö ¾Ê±â ¶§¹®¿¡ ÀÌ Àμö·ÎºÎÅÍ ¾î¶² ¼³Á¤ÀÌ º¯°æµÇ¾ú´ÂÁö Á¤È®ÇÏ°Ô ¾Ë¾Æ³»±â´Â ¾î·Æ´Ù. µû¶ó¼ ÀÌ ¸Þ½ÃÁö¸¦ ¹Þ¾ÒÀ» ¶§ ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÂüÁ¶ÇÏ°í ÀÖ´Â ¸ðµç ¼³Á¤°ªÀ» ´Ù½Ã Á¶»çÇØ¾ß ÇÑ´Ù. Á¤Ã¥ÀÌ º¯°æµÈ °æ¿ì lParamÀ¸·Î Àü´ÞµÇ´Â ¹®ÀÚ¿Àº "Policy"°¡ µÇ¸ç ·ÎÄÉÀÏÀÌ º¯°æµÈ °æ¿ì lParamÀº "intl"ÀÌ µÈ´Ù. |
¼³¸í |
SystemParametersInfo ÇÔ¼ö¿¡ ÀÇÇØ ½Ã½ºÅÛ ÆĶó¹ÌÅÍ°¡ º¯°æµÇ¾ú°Å³ª Á¤Ã¥ÀÌ º¯°æµÇ¾úÀ» ¶§ ¸ðµç ž ·¹º§ À©µµ¿ì°Ô ÀÌ ¸Þ½ÃÁö°¡ Àü´ÞµÈ´Ù. ½Ã½ºÅÛ ¼³Á¤ »óŸ¦ ÂüÁ¶ÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥Àº ÀÌ ¸Þ½ÃÁö¸¦ ¹Þ¾ÒÀ» ¶§ Âü°íÇÏ°í ÀÖ´Â ¼³Á¤ »óŸ¦ ´Ù½Ã Àû¿ëÇØ¾ß ÇÑ´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ Á÷Á¢ ½Ã½ºÅÛ ¼³Á¤À» º¯°æÇß´Ù¸é SendMessageTimeOut(HWND_BROADCAST,... ÇÔ¼ö·Î ¸ðµç ž ·¹º§ À©µµ¿ì¿¡°Ô º¯°æ »ç½ÇÀ» ¾Ë·Á ÁÖ¾î¾ß ÇÑ´Ù. |
¸®ÅÏ |
¸Þ½ÃÁö¸¦ ó¸®ÇßÀ¸¸é 0À» ¸®ÅÏÇÑ´Ù. |
¿¹Á¦ |
´ÙÀ½ ¿¹Á¦´Â ¿öÅ© ¿¡¸®¾î ¿µ¿ªÀ» Á¶»çÇÏ¿© º¸¿©ÁØ´Ù. ¿öÅ© ¿¡¸®¾î¶õ µ¥½ºÅ©Å¾ ¿µ¿ª¿¡¼ Ÿ½ºÅ© ¹Ù°¡ Â÷ÁöÇÏ°í ÀÖ´Â ¿µ¿ªÀ» Á¦¿ÜÇÑ ¿µ¿ªÀÌ´Ù. RECT wrt; void GetWorkArea() { SystemParametersInfo(SPI_GETWORKAREA,0,&wrt,0); } LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; TCHAR Mes[256]; switch(iMessage) { case WM_CREATE: GetWorkArea(); return 0; case WM_PAINT: hdc=BeginPaint(hWnd, &ps); wsprintf(Mes,"ÇöÀç ¿öÅ© ¿¡¸®¾î ÁÂÇ¥´Â %d,%d-%d,%dÀÔ´Ï´Ù", wrt.left, wrt.top, wrt.right, wrt.bottom); TextOut(hdc,10,10,Mes,lstrlen(Mes)); EndPaint(hWnd, &ps); return 0; case WM_SETTINGCHANGE: GetWorkArea(); InvalidateRect(hWnd,NULL,TRUE); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } WM_CREATE¿¡¼ ¿öÅ© ¿¡¸®¾î ¿µ¿ªÀ» ¹Ì¸® Á¶»çÇØ ³õÀ¸¸é WM_PAINT¿¡¼ Á¶»çÇÑ ¿µ¿ª ÁÂÇ¥¸¦ ¹®ÀÚ¿·Î ¹Ù²Ù¾î Ãâ·ÂÇØ ÁØ´Ù. ¸¸¾à WM_SETINGCHANGE ¸Þ½ÃÁö¸¦ ó¸®ÇÏÁö ¾ÊÀ¸¸é Ÿ½ºÅ© ¹ÙÀÇ À§Ä¡¸¦ ¿Å±â°Å³ª Çػ󵵸¦ ¹Ù²Ù¾îµµ ÀÌ ÇÁ·Î±×·¥Àº ÃÖÃÊ Á¶»çÇÑ ¿öÅ© ¿¡¸®¾î ÁÂÇ¥¸¦ °è¼Ó »ç¿ëÇÏ°Ô µÇ¹Ç·Î ºÎÁ¤È®ÇÏ°Ô µ¿ÀÛÇÒ À§ÇèÀÌ ÀÖ´Ù. |
Ç÷§Æû |
95ÀÌ»ó |
ÂüÁ¶ |
|
written by http://www.winapi.co.kr
|