|
Windows XP¿¡¼ Fast User SwitchingÀ»
Áö¿øÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥ ¸¸µé±â
1.
°³¿ä
Windows XPºÎÅÍ´Â Fast User Switching ±â´ÉÀÌ µµÀԵǾú½À´Ï´Ù. ¿©±â¼´Â, ÀÀ¿ë ÇÁ·Î±×·¥
ÀÛ¼º½Ã, Fast User SwitchingÀÌ ÀϾ ¶§ °³¹ßÀÚ°¡ ÀÌ ±â´ÉÀ» ¹Ù¸£°Ô Áö¿øÇϱâ
À§Çؼ ÇÊ¿äÇÑ °Íµé¿¡ ´ëÇØ¼ ¾Ë¾Æº¸µµ·Ï ÇϰڽÀ´Ï´Ù.
2. Fast User Switching Áö¿øÀ»
À§Çؼ ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼ ÇØ¾ß ÇÒ ÀÏ - 1
´ç¿¬ÇÑ À̾߱âÀÌÁö¸¸, Fast User SwitchingÀÇ Áö¿øÀ» Çϱâ
À§Çؼ´Â, ¿ì¼± WindowsXPÀÇ ¼¼¼Ç »óÅÂÀÇ º¯È¸¦ ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼ °¨Áö ÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù.
WindowsXP´Â ¼¼¼ÇÀÇ
»óŰ¡ º¯ÇÒ ¶§ ¸¶´Ù, WM_WTSSESSION_CHANGE ¸Þ¼¼Áö¸¦ ƯÁ¤ÇÑ À©µµ¿ìµé¿¡°Ô º¸³»ÁÝ´Ï´Ù. ÀÌ ¸Þ¼¼Áö¸¦ ¹Þ±â À§Çؼ´Â
WTSRegisterSessionNoticiation ÇÔ¼ö¸¦ È£ÃâÇØ¾ß ÇÕ´Ï´Ù.
|
ÄÄÆÄÀϽà ´ë»ó ¿î¿µÃ¼Á¦¸¦ WindowsXP·Î ¼³Á¤ÇÕ´Ï´Ù. #define _WIN32_WINNT
0x0501
#include <wtsapi32.h> #pragma comment( lib ,
"Wtsapi32.lib")
À©µµ¿ì¸¦ »ý¼ºÇÑ ´ÙÀ½ ¾Æ·¡ÀÇ ÇÔ¼ö¸¦
È£ÃâÇÕ´Ï´Ù. WTSRegisterSessionNotification( hWnd , NOTIFY_FOR_THIS_SESSION
);
| ÀÌ·¸°Ô ÇØ¼,
µî·Ï¿¡ ¼º°øÇϸé WindowsXP´Â WM_WTSSESSION_CHANGE ¸Þ¼¼Áö¸¦ º¸³» ÁÖ¸é¼, WPARAMÀÇ °ªÀ¸·Î ¼¼¼ÇÀÇ º¯È¸¦ ¾Ë·Á
ÁÝ´Ï´Ù.
|
case WM_WTSSESSION_CHANGE: switch( wParam ) { case
WTS_CONSOLE_CONNECT: ... break; case
WTS_CONSOLE_DISCONNECT: ... break; case
WTS_SESSION_LOCK: ... break; case WTS_SESSION_UNLOCK:
...
break; default: break; } break;
| »ç¿ëÀÚ ÀüȯÀÌ ¹ß»ýÇÒ °æ¿ì, WTS_SESSION_LOCK, WTS_CONSOLE_DISCONNECT,
WTS_SESSION_UNLOCK, WTS_CONSOLE_CONNECTÀÇ ¸Þ¼¼Áö°¡ Â÷·Ê·Î ¹ß»ýÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇØ¼, ¼¼¼ÇÀÇ º¯È
»óŸ¦ °üÂûÇÒ ¼ö ÀÖÀ¸¸é, °³¹ßÀÚ´Â ±×¿¡ ¸Â°Ô ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÇൿÀ» °áÁ¤ÇØ ÁÖ´Â °ÍÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¿¹¸¦ µé¾î¼, ¿Àµð¿À ÀåÄ¡ÀÇ
°æ¿ì, ²ú¾îÁø ¼¼¼Ç¿¡ ÀÖ´Â ¿Àµð¾î Ç÷¹À̾ À½¾ÇÀ» Àç»ýÇϰí ÀÖ°í, »õ·Ó°Ô ·Î±×ÀÎ ÇÑ »ç¿ëÀÚ°¡ ÀÌ ¿Àµð¿À ÀåÄ¡¸¦ ÀÌ¿ëÇÏ¿©, ³Ý¹ÌÆÃ °°Àº
¼ÒÇÁÆ®¿þ¾î¸¦ ÀÌ¿ëÇØ¼ ¿ø°Ý ȸÀǸ¦ ÇÏ·Á°í ÇÏ´Â °æ¿ì, ¿ø°Ý ȸÀǰ¡ Á¦´ë·Î ÁøÇàµÇ±â ¾î·Á¿ï ¼öµµ ÀÖ½À´Ï´Ù. ±Ø´ÜÀûÀÎ ¿¹¸¦ µé¾úÁö¸¸,
°³¹ßÀÚ°¡ ¼¼¼ÇÀÌ º¯ÇÔ¿¡ µû¶ó¼, ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÇൿÀ» ¹Ì¸® Á¤ÀÇÇØ ³õ´Â °ÍÀº ¹Ýµå½Ã ÇÊ¿äÇÕ´Ï´Ù.
3. Fast User Switching ½Ã ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼ ÇØ¾ß ÇÒ ÀÏ -2
ÀÌ·¯ÇÑ Fast User SwitchingÀ» Àß Áö¿øÇϱâ À§Çؼ, °³¹ßÀÚ´Â ¾Æ·¡ÀÇ °ÍµéÀ» ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ß½Ã
°í·ÁÇØ¾ß ÇÕ´Ï´Ù.
ÀνºÅϽº °ü¸®
°³¹ßÀÚ°¡ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÀνºÅϽº°¡ ´Ü Çϳª¸¸ µ¿ÀÛÇϱ⸦ ¿øÇÏ´Â °æ¿ì, ¾Æ·¡ÀÇ °æ¿ì¸¦ °í·ÁÇØ¾ß
ÇÕ´Ï´Ù.
FindWindow ȤÀº FindWindowEx¸¦ ÀÌ¿ëÇØ¼ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÀνºÅϽº¸¦ ã´Â °æ¿ì, ´Ù¸¥ ¼¼¼Ç¿¡ ÀÖ´Â ÀÌ
ÇÔ¼öµéÀÌ ´Ù¸¥ ¼¼¼Ç¿¡ ÀÖ´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÀνºÅϽº±îÁö ãÀ» ¼ö ¾ø½À´Ï´Ù.
¹ÂÅØ½º ȤÀº ¼¼¸¶Æ÷¾î °°Àº Ä¿³Î ¿ÀºêÁ§Æ®¸¦ ÀÌ¿ëÇÏ¿©
ÀνºÅϽº¸¦ »ý¼ºÀ» È®ÀÎÇÏ´Â °æ¿ì, ÀÌ °´Ã¼µéÀÇ À̸§ ¾Õ¿¡ '\Global\'À̶ó´Â Á¢µÎ»ç¸¦ ºÙ¿©¼, Àü¿ª °´Ã¼·Î ¼±¾ðÇØ¾ß ÇÕ´Ï´Ù. °¢ ¼¼¼ÇÀº
¼¼¼Ç ¸¶´Ù Ä¿³Î °´Ã¼µéÀÇ ³×ÀÓ½ºÆäÀ̽º°¡ Á¸ÀçÇϰí, À§ÀÇ '\Global\'À» ºÙÀÌÁö ¾Ê´Â °´Ã¼´Â °¢ ¼¼¼ÇÀÇ ·ÎÄà Ŀ³Î °´Ã¼·Î ¼±¾ðµÇ¾î, ´Ù¸¥
¼¼¼Ç¿¡ ÀÖ´Â µ¿ÀÏÇÑ À̸§ÀÇ ¹ÂÅØ½º ȤÀº ¼¼¸¶Æ÷¾î¸¦ ÀνÄÇÏÁö ¸øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î
"\Global\MutexTest" ÀÌ·± ½ÄÀ¸·Î Ä¿³Î °´Ã¼ÀÇ À̸§À» ¸í¸íÇØ ÁÖ¾î¾ß
ÇÕ´Ï´Ù.
°á±¹
´Ü Çϳª¸¸ÀÇ ÀνºÅϽº°¡ µ¿ÀÛÇϱ⸦ ¿øÇÏ´Â °æ¿ì, Àü¿ª ¹ÂÅØ½º ȤÀº ¼¼¸¶Æ÷¾îÀ»
»ý¼ºÇؼ, ±âÁ¸¿¡ ÀÌ Ä¿³Î °´Ã¼µéÀÌ »ý¼ºÀÌ µÇ¾ú´ÂÁöÀÇ ¿©ºÎ¸¦ ÀÌ¿ëÇÏ¿© ÀνºÅϽº¸¦
»ý¼ºÀ» Á¦¾îÇØ¾ß ÇÕ´Ï´Ù.
»ç¿ëÀÚ¿¡ µû¸¥ µ¥ÀÌŸ ºÐ¸®
Windows XPÀÇ ÀÌ·¯ÇÑ ±â´É ¶§¹®¿¡ ´ÜÀÏ ÇÁ·Î±×·¥À» ¿©·¯ ¸íÀÇ »ç¿ëÀÚ°¡ µ¿½Ã¿¡ »ç¿ëÇÒ ¼ö ÀÖ°í, ÀÌ ¶§¹®¿¡
ÀÀ¿ë ÇÁ·Î±×·¥Àº »ç¿ëÀÚ º°·Î µ¥ÀÌŸ¸¦ ÀúÀåÇÏ´Â °ÍÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ ¶§ ¸¶ÀÌÅ©·Î ¼ÒÇÁÆ®´Â °¢ »ç¿ëÀÚ º°·Î »ý¼ºµÇ´Â µ¥ÀÌŸ´Â °¢ »ç¿ëÀÚÀÇ My
Document Æú´õ ¹Ø¿¡ ÀúÀåÇÏ´Â °ÍÀ» ±ÇÀåÇϰí ÀÖ½À´Ï´Ù. ÀÌ My Document Æú´õ´Â SHGetFolderPath¿¡¼
CSIDL_PERSONALÀ» ÀÎÀÚ·Î ³Ñ°ÜÁÖ¾î ¾Ë ¼ö ÀÖ½À´Ï´Ù.
¸¶ÀÌÅ©·Î ¼ÒÇÁÆ®¿¡¼ ±ÇÀåÇÏ´Â µð·ºÅ丮µéÀ» Á» ´õ ¸î °³¸¸ ´õ ³ª¿Çϸé:
|
CSIDL_MYPICTURES: À̹ÌÁö ÆÄÀÏÀ» ÀúÀå½Ã¿¡ »ç¿ëÇϱ⸦ ±ÇÀåÇÕ´Ï´Ù. °¢°¢ÀÇ
°³Àθ¶´Ù ´Ù¸£°Ô »ý¼ºµË´Ï´Ù.
CSIDL_COMMON_APPDATA: °³ÀÎ µ¥ÀÌŸ°¡ ¾Æ´Ñ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ µ¥ÀÌŸ¸¦
ÀúÀåÇÒ ¶§ »ç¿ëÇϱ⸦ ±ÇÀåÇÕ´Ï´Ù. ±âº» ÆÐ½º´Â C:\Documents and Settings\All Users\Application Data
ÀÔ´Ï´Ù.
CSIDL_LOCAL_APPDATA: Àӽà ÆÄÀϵîÀ» ÀúÀåÇϱâ À§Çؼ
»ç¿ëµË´Ï´Ù.
|
·¹Áö½ºÆ®¸® ÀúÀå¼ÒÀÇ ºÐ¸®
À§ÀÇ »ç¿ëÀÚº° µ¥ÀÌŸ ÀúÀå°ú ¿¬°áµÇ´Â À̾߱â·Î¼, »ç¿ëÀÚµéÀÇ µ¥ÀÌŸ¸¦ ·¹Áö½ºÆ®¸®¿¡ ÀúÀåÇÒ Çʿ䰡 ÀÖÀ» °æ¿ì,
HKCU (Current User)¸¦ »ç¿ëÇϽðí, HKLM (Local Machine)À» »ç¿ëÇÏÁö ¸»¶ó°í ±ÇÀåÇϰí ÀÖ½À´Ï´Ù.
4. ÇÁ·Î±×·¥ Á¾·á½Ã ÇÒ ÀÏ
WTSRegisterSessionNotification¿¡¼ µî·ÏÇÑ À©µµ¿ì¸¦ DestroyÇϱâ ÀÌÀü¿¡,
WTSUnRegisterSessionNotificationÀ» È£ÃâÇØ Áֽñ⠹ٶø´Ï´Ù.
5. °á·Ð
°á±¹ Fast User SwitchingÀ» Áö¿øÇϱâ À§Çؼ´Â
¼¼¼ÇÀÇ º¯È¸¦ °¨ÁöÇØ¾ß Çϰí, µ¥ÀÌŸ¸¦ °¢°¢ÀÇ °³Àκ°·Î ºÐ¸®Çϸç, Àü¿ªÀ¸·Î ¾²´Â
ÀÚ¿ø¿¡ ´ëÇØ¼´Â ¼¼¼ÇÀÇ º¯È¿¡ µû¶ó ¾î¶² ½ÄÀ¸·Î Ȱ¿ëÇØ¾ß ÇÏ´Â Áö¸¦ ¹Ì¸® Á¤ÀÇÇØ
³õ¾Æ¾ß ÇÕ´Ï´Ù.
6. Âü°í
http://support.microsoft.com/default.aspx?scid=kb%3Bko%3B310153
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwxp/html/winxpfus.asp
|