================================================================================ MFC ¶óÀ̺귯¸® : AgentDllTester ÇÁ·ÎÁ§Æ® °³¿ä =============================================================================== ÀÀ¿ë ÇÁ·Î±×·¥ ¸¶¹ý»ç¿¡¼­ ÀÌ AgentDllTester ÀÀ¿ë ÇÁ·Î±×·¥À» ¸¸µé¾ú½À´Ï´Ù. ÀÌ ÀÀ¿ë ÇÁ·Î±×·¥Àº MFCÀÇ ±âº» »ç¿ë¹ýÀ» º¸¿© ÁÙ »Ó¸¸ ¾Æ´Ï¶ó ÀÀ¿ë ÇÁ·Î±×·¥ ÀÛ¼ºÀ» À§ÇÑ ±âº» ±¸Á¶¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ ÆÄÀÏ¿¡´Â AgentDllTester ÀÀ¿ë ÇÁ·Î±×·¥À» ±¸¼ºÇÏ´Â °¢ ÆÄÀÏ¿¡ ´ëÇÑ ¿ä¾à ¼³¸íÀÌ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. AgentDllTester.vcproj ÀÀ¿ë ÇÁ·Î±×·¥ ¸¶¹ý»ç¸¦ »ç¿ëÇÏ¿© »ý¼ºµÈ VC++ ÇÁ·ÎÁ§Æ®ÀÇ ÁÖ ÇÁ·ÎÁ§Æ® ÆÄÀÏÀÔ´Ï´Ù. ÆÄÀÏÀ» »ý¼ºÇÑ Visual C++ ¹öÀü¿¡ ´ëÇÑ Á¤º¸¿Í ÀÀ¿ë ÇÁ·Î±×·¥ ¸¶¹ý»ç¸¦ »ç¿ëÇÏ¿© ¼±ÅÃÇÑ Ç÷§Æû, ±¸¼º ¹× ÇÁ·ÎÁ§Æ® ±â´É¿¡ ´ëÇÑ Á¤º¸°¡ µé¾î ÀÖ½À´Ï´Ù. AgentDllTester.h ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ±âº» Çì´õ ÆÄÀÏÀÔ´Ï´Ù. ¿©±â¿¡´Â ´Ù¸¥ ÇÁ·ÎÁ§Æ® °ü·Ã Çì´õ(Resource.h Æ÷ÇÔ)°¡ µé¾î ÀÖ°í CAgentDllTesterApp ÀÀ¿ë ÇÁ·Î±×·¥ Ŭ·¡½º¸¦ ¼±¾ðÇÕ´Ï´Ù. AgentDllTester.cpp ÀÀ¿ë ÇÁ·Î±×·¥ Ŭ·¡½º CAgentDllTesterAppÀÌ(°¡) µé¾î ÀÖ´Â ±âº» ÀÀ¿ë ÇÁ·Î±×·¥ ¼Ò½º ÆÄÀÏÀÔ´Ï´Ù. AgentDllTester.rc ÇÁ·Î±×·¥¿¡¼­ »ç¿ëÇÏ´Â ¸ðµç Microsoft Windows ¸®¼Ò½ºÀÇ ¸ñ·ÏÀÔ´Ï´Ù. ¿©±â¿¡´Â RES ÇÏÀ§ µð·ºÅ͸®¿¡ ÀúÀåµÈ ¾ÆÀÌÄÜ, ºñÆ®¸Ê ¹× Ä¿¼­°¡ Æ÷ÇԵ˴ϴÙ. ÀÌ ÆÄÀÏÀº Microsoft Visual C++¿¡¼­ Á÷Á¢ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÁ·ÎÁ§Æ® ¸®¼Ò½º´Â 1042¿¡ ÀÖ½À´Ï´Ù. res\AgentDllTester.ico ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¾ÆÀÌÄÜÀ¸·Î »ç¿ëµÇ´Â ¾ÆÀÌÄÜ ÆÄÀÏÀÔ´Ï´Ù. ÀÌ ¾ÆÀÌÄÜÀº ÁÖ ¸®¼Ò½º ÆÄÀÏÀÎ AgentDllTester.rc¿¡ ÀÇÇØ Æ÷ÇԵ˴ϴÙ. res\AgentDllTester.rc2 ÀÌ ÆÄÀÏ¿¡´Â Microsoft Visual C++ ÀÌ¿ÜÀÇ ´Ù¸¥ µµ±¸¿¡¼­ ÆíÁýÇÑ ¸®¼Ò½º°¡ µé¾î ÀÖ½À´Ï´Ù. ¸®¼Ò½º ÆíÁý±â·Î ÆíÁýÇÒ ¼ö ¾ø´Â ¸ðµç ¸®¼Ò½º´Â ÀÌ ÆÄÀÏ¿¡ ³Ö¾î¾ß ÇÕ´Ï´Ù. ///////////////////////////////////////////////////////////////////////////// ÀÀ¿ë ÇÁ·Î±×·¥ ¸¶¹ý»ç¿¡¼­ ÇϳªÀÇ ´ëÈ­ »óÀÚ Å¬·¡½º°¡ ¸¸µé¾îÁý´Ï´Ù. AgentDllTesterDlg.h, AgentDllTesterDlg.cpp ? ´ëÈ­ »óÀÚ ÀÌ ÆÄÀÏ¿¡´Â CAgentDllTesterDlg Ŭ·¡½º°¡ µé¾î ÀÖ½À´Ï´Ù. ÀÌ Å¬·¡½º´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÁÖ ´ëÈ­ »óÀÚ µ¿ÀÛÀ» Á¤ÀÇÇÕ´Ï´Ù. ´ëÈ­ »óÀÚÀÇ ÅÛÇø´Àº Microsoft Visual C++¿¡¼­ ÆíÁýÇÒ ¼ö ÀÖ´Â AgentDllTester.rc¿¡ ÀÖ½À´Ï´Ù. ///////////////////////////////////////////////////////////////////////////// ±âŸ ±â´É: ActiveX ÄÁÆ®·Ñ ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼­ ActiveX ÄÁÆ®·ÑÀ» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÕ´Ï´Ù. ///////////////////////////////////////////////////////////////////////////// ±âŸ Ç¥ÁØ ÆÄÀÏ: StdAfx.h, StdAfx.cpp ÀÌ ÆÄÀÏÀº ¹Ì¸® ÄÄÆÄÀÏµÈ Çì´õ ÆÄÀÏ(PCH)ÀÎ AgentDllTester.pch¿Í ¹Ì¸® ÄÄÆÄÀÏµÈ Çü½Ä ÆÄÀÏÀÎ StdAfx.obj¸¦ ºôµåÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. Resource.h »õ ¸®¼Ò½º ID¸¦ Á¤ÀÇÇϴ ǥÁØ Çì´õ ÆÄÀÏÀÔ´Ï´Ù. Microsoft Visual C++¿¡¼­ ÀÌ ÆÄÀÏÀ» ÀÐ°í ¾÷µ¥ÀÌÆ®ÇÕ´Ï´Ù. AgentDllTester.manifest ÀÀ¿ë ÇÁ·Î±×·¥ ¸Å´ÏÆ佺Ʈ ÆÄÀÏÀº Windows XP¿¡¼­ ƯÁ¤ ¹öÀüÀÇ Side-by-Side ¾î¼Àºí¸®¿¡ ´ëÇÑ ÀÀ¿ë ÇÁ·Î±×·¥ Á¾¼Ó¼ºÀ» ¼³¸íÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ·Î´õ´Â ÀÌ Á¤º¸¸¦ »ç¿ëÇÏ¿© ¾î¼Àºí¸® ij½Ã¿¡¼­ ÀûÀýÇÑ ¾î¼Àºí¸®¸¦ ·ÎµåÇϰųª ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼­ Àü¿ë ¾î¼Àºí¸®¸¦ ·ÎµåÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ ¸Å´ÏÆ佺Ʈ´Â ÀÀ¿ë ÇÁ·Î±×·¥ ½ÇÇà ÆÄÀÏ°ú °°Àº Æú´õ¿¡ ¼³Ä¡µÈ ¿ÜºÎ .manifest ÆÄÀÏ·Î Àç¹èÆ÷¸¦ À§ÇØ Æ÷ÇԵǰųª ¸®¼Ò½ºÀÇ ÇüÅ·Π½ÇÇà ÆÄÀÏ¿¡ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù. ///////////////////////////////////////////////////////////////////////////// ±âŸ Âü°í: ÀÀ¿ë ÇÁ·Î±×·¥ ¸¶¹ý»ç´Â "TODO:"¸¦ »ç¿ëÇÏ¿© Ãß°¡Çϰųª »ç¿ëÀÚ ÁöÁ¤ÇØ¾ß ÇÏ´Â ¼Ò½º ÄÚµå ºÎºÐÀ» ³ªÅ¸³À´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ °øÀ¯ DLL¿¡¼­ MFC¸¦ »ç¿ëÇÏ´Â °æ¿ì ÇØ´ç MFC DLLÀ» Àç¹èÆ÷ÇØ¾ß ÇÕ´Ï´Ù. ±×¸®°í ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¿î¿µ üÁ¦ÀÇ ·ÎĶ°ú ´Ù¸¥ ¾ð¾î¸¦ »ç¿ëÇÏ´Â °æ¿ì ÇØ´ç Áö¿ªÈ­µÈ ¸®¼Ò½ºÀÎ MFC80XXX.DLLÀ» Àç¹èÆ÷ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ µÎ°¡Áö Ç׸ñ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº MSDN ¼³¸í¼­ÀÇ Visual C++ ÀÀ¿ë ÇÁ·Î±×·¥ Àç¹èÆ÷ Ç׸ñÀ» ÂüÁ¶ÇϽʽÿÀ. /////////////////////////////////////////////////////////////////////////////