DirectX 9.0 ÀÇ ¼Ò°³ DirectX SDK ÀÇ »ç¿ë¹ý C ¶Ç´Â C++ ¿¡ ÀÇÇÑ DirectX ÇÁ·Î±×·¡¹Ö COM ÀÇ »ç¿ë¹ý COM °³Ã¼¶õ [¸ñÂ÷¿¶÷] [ÁÖ¼Òº¹»ç] [½½·Ôºñ¿ì±â]
|
| Microsoft DirectX 9.0 |
±¸¼º ¿ä¼Ò °³Ã¼ ¸ðµ¨ (COM) °³Ã¼´Â, ±âº»ÀûÀ¸·Î, 1 °³ ¶Ç´Â º¹¼öÀÇ Å½ºÅ©¸¦ ½ÇÇàÇϱâ À§Çؼ ¾ÖÇø®ÄÉÀ̼ÇÀ¸·Î »ç¿ëµÇ´Â ºí·¢ ¹Ú½º¿Í °°Àº °ÍÀÌ´Ù. µ¿Àû ¸µÅ© ¶óÀ̺귯¸® (DLL)·Î¼ ó¸® ÇÏ´Â °ÍÀÌ °¡Àå ÀϹÝÀûÀÌ´Ù. Á¾·¡ÀÇ DLL °°ÀÌ, COM °³Ã¼°¡ Áö¿ø Çϰí ÀÖ´Â ¸ðµç 󸮴Â, °³Ã¼¿¡ ÀÇÇØ °ø°³µÇ°í ÀÖ´Â ¸Þ¼µå¸¦ ¾ÖÇø®ÄÉÀ̼ÇÀ¸·ÎºÎÅÍ È£ÃâÇÏ´Â °Í¿¡ ÀÇÇØ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀÌ COM °³Ã¼¿Í ±³È¯ÇÏ´Â ¹æ¹ýÀº, C++ °³Ã¼¿Í ±³È¯ÇÏ´Â ¹æ¹ý°ú ºñ½ÁÇÏ´Ù. ´Ù¸¸, ÀÌ·¯ÇÑ »çÀÌ¿¡´Â ¸î°³ÀÇ ÇöÀúÇÑ Â÷ÀÌÁ¡ÀÌ ÀÖ´Ù.
ÀÌ ¹®¼¿¡´Â, ´ÙÀ½ÀÇ Ç׸ñÀÌ Æ÷ÇԵǾî ÀÖ´Ù.
°³Ã¼¿Í ÀÎÅÍÆäÀ̽ºÀÇ Â÷À̸¦ ÀÌÇØÇÏ´Â °ÍÀº Áß¿äÇÑ °ÍÀÌ´Ù. °³Ã¼´Â, ÀÏ»óÀûÀ¸·Î, ±× ÁÖ°¡ µÇ´Â ÀÎÅÍÆäÀ̽ºÀÇ À̸§À̶ó°í ºÎ¸£±âµµ ÇÑ´Ù. ±×·¯³ª, ¾ö¹ÐÇϰԴÂ, ÀÌ 2 °³ÀÇ ¿ë¾î´Â Àǹ̰¡ ´Ù¸£´Ù.
COM Ç¥ÁØ¿¡¼´Â, °ø°³ ³¡³ ÀÎÅÍÆäÀ̽º Á¤ÀÇ´Â º¯°æÇÒ ¼ö ¾ø°Ô µÇ¾î ÀÖ´Ù. ¿¹¸¦ µé¾î, ±âÁ¸ÀÇ ÀÎÅÍÆäÀ̽º¿¡ »õ·Î¿î ¸Þ¼µå¸¦ Ãß°¡ÇÒ ¼ö ¾ø´Ù. ÀÎÅÍÆäÀ̽º¸¦ º¯°æÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, »õ·Î¿î ÀÎÅÍÆäÀ̽º¸¦ »ý¼º ÇÒ Çʿ䰡 ÀÖ´Ù. ÀÎÅÍÆäÀ̽º¿¡ ¹Ýµå½Ã Æ÷ÇÔÇÏÁö ¾ÊÀ¸¸é ¾È µÇ´Â ¸Þ¼µåµîÀÇ Á¦¾àÀº ¾øÁö¸¸, »õ·Î¿î ¼¼´ëÀÇ ÀÎÅÍÆäÀ̽º¿¡´Â, ±× ¹ÙÅÁÀ¸·Î µÇ¾î ÀÖ´Â ÀÎÅÍÆäÀ̽ºÀÇ ¸ðµç ¸Þ¼µå¿Í Ãß°¡µÇ´Â »õ·Î¿î ¸Þ¼µå¸¦ Æ÷ÇÔÇÏ´Â °ÍÀÌ ÀϹÝÀûÀÌ´Ù.
1 °³ÀÇ ÀÎÅÍÆäÀ̽º¿¡ º¹¼öÀÇ ¼¼´ë°¡ Á¸ÀçÇÏ´Â Àϵµ µå¹°Áö ¾Ê´Ù. º¸Åë, ¾î´À ¼¼´ë¶óµµ º»ÁúÀûÀ¸·Î ÀüüÀûÀ¸·Î´Â °°Àº ŽºÅ©¸¦ ½ÇÇàÇÏÁö¸¸, ¼¼ºÎ°¡ Â÷À̰¡ ³´Ù. ¸¹Àº °æ¿ì, °³Ã¼´Â ¸ðµç ¼¼´ëÀÇ ÀÎÅÍÆäÀ̽º¸¦ °ø°³ÇÑ´Ù. À̰Ϳ¡ ÀÇÇØ, ³°Àº ¾ÖÇø®ÄÉÀ̼ǿ¡¼´Â, °³Ã¼ÀÇ ³°Àº ÀÎÅÍÆäÀ̽º¸¦ °è¼ÓÇØ »ç¿ëÇØ, »õ·Î¿î ¾ÖÇø®ÄÉÀ̼ǿ¡¼´Â, »õ·Î¿î ÀÎÅÍÆäÀ̽ºÀÇ ±â´ÉÀ» ÀÌ¿ëÇÒ ¼ö°¡ ÀÖ´Ù. º¸Åë, 1 »ìÀÇ ÆÐ¹Ð¸®¿¡ ¼ÓÇÏ´Â ÀÎÅÍÆäÀ̽º¿¡´Â ¸ðµÎ °°Àº À̸§ÀÌ »ç¿ëµÇ¾î °Å±â¿¡ ¼¼´ë¸¦ ³ªÅ¸³»´Â Á¤¼ö°¡ ºÎ°¡µÈ´Ù. ¿¹¸¦ µé¾î, ÃÊ´ëÀÇ ÀÎÅÍÆäÀ̽ºÀÇ À̸§ÀÌ IMyInterface À̾ú´Ù°í ÇÏ¸é ´ÙÀ½ÀÇ 2 ¼¼´ëÀÇ À̸§Àº IMyInterface2 ¹× IMyInterface3 °¡ µÈ´Ù. DirectX ¿¡¼´Â, º¸Åë, °¢ ¼¼´ëÀÇ ÀÎÅÍÆäÀ̽ºÀÇ À̸§¿¡ DirectX ÀÇ ¹öÀü ¹øÈ£¸¦ »ç¿ëÇϰí ÀÖ´Ù.
±Û·Î¹ú ÀÏÀÇ ½Äº°ÀÚ (GUID)´Â, COM ÇÁ·Î±×·¡¹Ö ¸ðµ¨ÀÇ ÁÖ¿äÇÑ ºÎºÐÀÌ´Ù. GUID ¸¦ °¡Àå °£´ÜÇÏ°Ô ¼³¸í Çϸé, GUID ´Â 128 ºñÆ®ÀÇ ±¸Á¶Ã¼ÀÌ´Ù. ´Ù¸¸, GUID ¸¦ »ý¼º ÇÒ ¶§´Â, ±× ¹Û¿¡ °°Àº GUID °¡ Á¸ÀçÇÏÁö ¾Ê´Â °ÍÀÌ º¸ÁõµÇÁö ¾ÊÀ¸¸é ¾È µÈ´Ù. COM ¿¡¼´Â, ´ÙÀ½ÀÇ 2 °³ÀÇ ¸ñÀûÀ̱⠶§¹®¿¡, GUID ¸¦ ³Ð°Ô »ç¿ëÇÑ´Ù.
GUID ´Â ±¸Á¶Ã¼ÀÌÁö¸¸, µî°¡ÀΠij¸¯ÅÍ ¶óÀÎÀ¸·Î¼ Ç¥ÇöµÇ´Â Àϵµ ÀÖ´Ù. GUID ÀÇ Ä³¸¯ÅÍ ¶óÀÎ Çü½ÄÀ¸·Î¼ ÀϹÝÀûÀÎ °ÍÀº, 32 Áø¼öÀÇ Á¤¼ö¿¡ ÀÇÇÑ 8-4-4-4-12 Çü½ÄÀÌ´Ù. Áï,"{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} " °¡ µÇ¾î,x ´Â 16 Áø¼öÀÇ Á¤¼ö¿¡ ´ëÀÀÇÑ´Ù. ¿¹¸¦ µé¾î,IDirect3D9 ÀÎÅÍÆäÀ̽ºÀÇ IID ¸¦ ij¸¯ÅÍ ¶óÀÎ Çü½Ä¿¡¼ ³ªÅ¸³»¸é ´ÙÀ½°ú °°ÀÌ µÈ´Ù.
{1DD9E8DA-1C77-4D40-B0CF-98FEFDFF9512}½ÇÁ¦ÀÇ GUID ´Â »ç¿ëÇÏ±â ¾î·Æ°í, ¿ÀÀÔ·ÂÇϱ⠽±±â ¶§¹®¿¡, º¸ÅëÀº, GUID ¿Í ÇÔ²² µî°¡ÀÎ À̸§µµ ÁغñµÈ´Ù. CoCreateInstance µîÀÇ ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§¿¡, ½ÇÁ¦ÀÇ ±¸Á¶Ã¼ ´ë½Å¿¡ ÀÌ À̸§À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. °ü½ÀÀûÀÎ ¸í¸í ±ÔÄ¢À¸·Î¼ ÀÎÅÍÆäÀ̽º ¹× °³Ã¼ÀÇ ¼³¸íÀûÀÎ À̸§ÀÇ ¼±µÎ¿¡´Â, °¢°¢ IID_ ¹× CLSID_ ¸¦ ºÙÀÏ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î,IDirect3D9 ÀÎÅÍÆäÀ̽ºÀÇ IID ÀÇ À̸§Àº IID_IDirect3D8 °¡ µÈ´Ù.
¸ðµç COM ¸Þ¼µå´Â,HRESULT ·Î ºÒ¸®´Â 32 ºñÆ®ÀÇ Á¤¼ö¸¦ µ¹·ÁÁØ´Ù. ´ëºÎºÐÀÇ ¸Þ¼µå¿¡¼´Â,HRESULT ´Â ±âº»ÀûÀ¸·Î 1 °³ÀÇ ±¸Á¶Ã¼¸¦ Çü¼ºÇØ, ´ÙÀ½ÀÇ 2 °³ÀÇ µ¶¸³ÇÑ Á¤º¸¸¦ Æ÷ÇÔÇϰí ÀÖ´Ù.
ÀϺÎÀÇ ¸Þ¼µå´Â, Winerror.h ¿¡ Ç¥ÁØ ¼¼Æ®·Î¼ Á¤Àǵǰí ÀÖ´Â °ª¸¸À» HRESULT °ªÀ¸·Î µ¹·ÁÁØ´Ù. ´Ù¸¸, ¸Þ¼µå´Â, º¸´Ù Àü¹®ÀûÀÎ Á¤º¸¸¦ ³ªÅ¸³»´Â Ä¿½ºÅÒ HRESULT °ªµµ µ¹·ÁÁÙ ¼ö°¡ ÀÖ´Ù. º¸Åë, ÀÌ·¯ÇÑ °ªÀº, ¸Þ¼µåÀÇ ·¹ÆÛ·±½º ÆäÀÌÁö¿¡ ±âÀçµÇ¾î ÀÖ´Ù.
HRESULT °ªÀº ¿¡·¯ Á¤º¸¸¦ µ¹·ÁÁÖ±â À§Çؼ(¶§¹®¿¡) »ç¿ëµÇ´Â °æ¿ì°¡ ¸¹Áö¸¸, À̰͵éÀ» ¿¡·¯ ÄÚµå¶ó°í ºÁ¼´Â ¾È µÈ´Ù. HRESULT °ª¿¡´Â, °ª»ó¼¼ Á¤º¸¸¦ Æ÷ÇÔÇÑ ºñÆ®¿Í Á¤ºÎ¸¦ ³ªÅ¸³»´Â ºñÆ®°¡ µ¶¸³ÇØ ÀúÀå µÇ°í ÀÖ±â (À§ÇØ)¶§¹®¿¡, Á¤ºÎ¸¦ ³ªÅ¸³»´Â Äڵ带 ¸î°³¿¡¼µµ Æ÷ÇÔÇÒ ¼ö°¡ ÀÖ´Ù. °ü½À¿¡ ÀÇÇØ, ¼º°ø Äڵ忡´Â S_ ¶ó°í ÇÏ´Â Á¢µÎ¾î¸¦ ºÙÀÏ ¼ö ÀÖ¾î ½ÇÆÐ¸¦ ³ªÅ¸³»´Â Äڵ忡´Â E_ ¶ó°í ÇÏ´Â Á¢µÎ¾î¸¦ ºÙÀÏ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, °¡Àå ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â Äڵ忡 S_OK ¹× E_FAIL °¡ ÀÖ´Ù. °¢°¢, ´ÜÁö ¼º°ø ¶Ç´Â ½ÇÆÐ¸¦ ³ªÅ¸³»°í ÀÖ´Ù.
COM ¸Þ¼µå°¡ Á¤ºÎ¸¦ ³ªÅ¸³»´Â ´Ù¾çÇÑ Äڵ带 µ¹·ÁÁشٰí ÇÏ´Â °ÍÀº,HRESULT °ªÀÇ Å×½ºÆ® ¹æ¹ýÀ¸·Î ÁÖÀǰ¡ ÇÊ¿äÇÑ °ÍÀ» ÀǹÌÇÑ´Ù. ¿¹¸¦ µé¾î, ¹®¼¿¡ ±âÀçµÇ¾î ÀÖ´Â ¹Ýȯ°ªÀ» »ç¿ëÇØ, ¼º°øÀÇ °æ¿ì´Â S_OK °¡ µ¹·ÁÁÖ¾îÁ® ½ÇÆÐÀÇ °æ¿ì´Â E_FAIL °¡ ¹ÝȯµÈ´Ù°í ÇÏ´Â °¡¼³¿¡ ±Ù°ÅÇØ Å×½ºÆ®¸¦ ½Ç½ÃÇß´Ù°í ÇÑ´Ù. ±×·¯³ª, ¸Þ¼µå·ÎºÎÅÍ´Â, ÀÌ¿ÜÀÇ ½ÇÆÐ ¶Ç´Â ¼º°øÀ» ³ªÅ¸³»´Â Äڵ尡 µ¹·ÁÁÖ¾îÁú °¡´É¼ºµµ ÀÖ´Ù. ´ÙÀ½ ÄÚµå´Â, ´Ü¼øÇÑ Å×½ºÆ®¸¦ ÀÌ¿ëÇßÀ» °æ¿ìÀÇ À§Ç輺À» ³ªÅ¸³»°í ÀÖ´Ù. hr ´Â, ¸Þ¼µå¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁø HRESULT °ªÀÌ´Ù.
if(hr == E_FAIL)
{
//Handle the failure
}
else
{
//Handle the success
}
¸Þ¼µå°¡ ½ÇÆÐ¸¦ ³ªÅ¸³»±â À§Çؼ(¶§¹®¿¡) µ¹·ÁÁÖ´Â °ªÀÌ E_FAIL »ÓÀÎ ÇÑ, ÀÌ Å×½ºÆ®´Â ¿Ã¹Ù¸£°Ô ±â´ÉÇÑ´Ù. ±×·¯³ª, ¸Þ¼µå·ÎºÎÅÍ, E_NOTIMPL ³ª E_INVALIDARG µîÀÇ ¿¡·¯°ªÀÌ µ¹·ÁÁÖ¾îÁú °¡´É¼ºµµ ÀÖ´Ù. ÀÌ·¯ÇÑ °ªÀº ¼º°øÀ¸·Î¼ ÇØ¼®µÇ¾î ¾ÖÇø®ÄÉÀ̼ÇÀ¸·Î ¿¡·¯°¡ ¹ß»ýÇÏ´Â ¿øÀÎÀÌ µÈ´Ù.
¸Þ¼µåÀÇ È£ÃâÀÇ °á°ú¿¡ °üÇÑ »ó¼¼ÇÑ Á¤º¸°¡ ÇÊ¿äÇÑ °æ¿ì´Â, °ü°è°¡ ÀÖ´Â °¢ HRESULT °ªÀ» Å×½ºÆ®ÇÒ Çʿ䰡 ÀÖ´Ù. ±×·¯³ª, ÇÊ¿äÇÑ Á¤º¸°¡, ¼º°øÀΰ¡ ½ÇÆÐÀΰ¡¸¸ÀÇ °æ¿ìµµ ÀÖ´Ù. HRESULT °ªÀÌ ¼º°øÀ» ³ªÅ¸³»°í ÀÖ´ÂÁö ½ÇÆÐ¸¦ ³ªÅ¸³»°í ÀÖ´ÂÁö¸¦ Å×½ºÆ®ÇÏ´Â °·ÂÇÑ ¹æ¹ýÀ¸·Î¼ Winerror.h ¿¡ Á¤Àǵǰí ÀÖ´Â ´ÙÀ½ÀÇ ¸ÅÅ©·ÎÀÇ ¾î´À ÂÊÀΰ¡¿¡ HRESULT °ªÀ» °Ç³×ÁÙ ¼ö°¡ ÀÖ´Ù.
FAILED ¸ÅÅ©·Î¸¦ »ç¿ëÇϸé Àü¼úÀÇ Äڵ带 ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.
if(FAILED(hr))
{
//Handle the failure
}
else
{
//Handle the success
}
ÀÌ ÄÚµå´Â, E_NOTIMPL ³ª E_INVALIDARG ¸¦ ½ÇÆÐ·Î¼ ¿Ã¹Ù¸£°Ô ó¸®ÇÑ´Ù.
´ëºÎºÐÀÇ COM ¸Þ¼µå´Â ±¸Á¶È µÈ HRESULT °ªÀ» µ¹·ÁÁÖÁö¸¸, ÀϺÎÀÇ ¼Ò¼öÀÇ ¸Þ¼µå¿¡¼´Â HRESULT ¸¦ »ç¿ëÇØ ´Ü¼øÇÑ 1 °³ÀÇ Á¤¼ö¸¦ µ¹·ÁÁØ´Ù. ÀÌ·¯ÇÑ ¸Þ¼µå´Â, ºñ¸í½ÃÀûÀ¸·Î Ç×»ó ¼º°øÇÑ´Ù. ÀÌ·± Á¾·ùÀÇ HRESULT ¸¦ SUCCEEDED ¸ÅÅ©·Î¿¡ °Ç³×ÁÖ¸é ¸ÅÅ©·Î·ÎºÎÅÍ´Â ¹Ýµå½Ã TRUE °¡ ¹ÝȯµÈ´Ù. ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â ¿¹·Î¼IUnknown::Release ¸Þ¼µå°¡ ÀÖ´Ù. ÀÌ ¸Þ¼µå´Â, °³Ã¼ÀÇ ÂüÁ¶ Ä«¿îÆ®¸¦ 1 °³¾¿ °¨¼Ò ÇØ, ÇöÀçÀÇ ÂüÁ¶ Ä«¿îÆ®¸¦ µ¹·ÁÁØ´Ù. ÂüÁ¶ Ä«¿îÆ®ÀÇ ¼³¸í¿¡ ´ëÇØ¼´Â, ¡¸COM °³Ã¼ÀÇ ¼ö¸íÀÇ °ü¸®¡¹¸¦ ÂüÁ¶ÇÒ°Í.
COM ¸Þ¼µåÀÇ ·¹ÆÛ·±½º ÆäÀÌÁö¸¦ ÂüÁ¶ Çϸé, ´ÙÀ½°ú °°Àº Ç¥±â°¡ ¹ß°ßµÈ´Ù.
HRESULT CreateDevice(..., IDirect3DDevice9 **ppReturnedDeviceInterface);
COM ¿¡¼´Â, C ³ª C++ ¿¡¼µµ »ç¿ëµÇ´Â º¸ÅëÀÇ Æ÷ÀÎÅÍ ¿Ü¿¡, ÀÌÁ¦ 1 °³º°ÀÇ ·¹º§ÀÇ °£Á¢Àû È£ÃâÀÌ »ç¿ëµÇ´Â ÀÏÀÌ ÀÖ´Ù. ÀÌ Á¦ 2 ÀÇ ·¹º§ÀÇ °£Á¢Àû È£ÃâÀº, ÇüÅÂÀÇ ¼±¾ðÀÇ µÚ¿¡ °è¼ÓµÇ´Â "**" À¸·Î ³ªÅ¸³ª º¸Åë, º¯¼ö¸í¿¡´Â "pp" ¶ó°í ÇÏ´Â Á¢µÎ¾î°¡ ºÙ´Â´Ù. Àü¼úÀÇ ¿¹ÀÇ ppReturnedDeviceInterface ÆÄ¶ó¹ÌÅÍ´Â, ÀϹÝÀûÀ¸·Î,IDirect3DDevice9 ÀÎÅÍÆäÀ̽ºÀÇ Æ÷ÀÎÅÍ ÁÖ¼Ò¶ó°í ºÎ¸¥´Ù.
C++ ¿Í ´Þ¸®, COM °³Ã¼ÀÇ ¸Þ¼µå¿¡ Á÷Á¢ ¾×¼¼½º ÇÒ °ÍÀº ¾ø´Ù. ±× ´ë½ÅÇØ, ¸Þ¼µå¸¦ °ø°³Çϰí ÀÖ´Â ÀÎÅÍÆäÀ̽ºÀÇ Æ÷ÀÎÅ͸¦ ¾ò¾î¿Ã Çʿ䰡 ÀÖ´Ù. ¸Þ¼µå¸¦ È£ÃâÇÒ ¶§´Â, C++ ÀÇ ¸Þ¼µåÀÇ Æ÷ÀÎÅ͸¦ È£ÃâÇÏ¸é ±Í·Î µ¿ÀÏÇÑ ±¸¹®À» »ç¿ëÇÑ´Ù. ¿¹¸¦ µé¾î,IMyInterface::DoSomething ¸Þ¼µå¸¦ È£ÃâÇÏ·Á¸é , ´ÙÀ½°ú °°Àº ±¸¹®À» »ç¿ëÇÑ´Ù.
IMyInterface *pMyIface; ... pMyIface->DoSomething(...);
°£Á¢Àû È£Ãâ¿¡ Á¦ 2 ÀÇ ·¹º§ÀÌ ÇÊ¿äÇÑ °ÍÀº, ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͸¦ Á÷Á¢ »ý¼º ÇÏÁö ¾Ê±â ¶§¹®ÀÌ´Ù. Àü¼úÀÇ CreateDevice ¸Þ¼µå¿Í °°Àº, ´Ù¾çÇÑ ¸Þ¼µåÀÇ 1 °³¸¦ È£ÃâÇØ¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ ¸Þ¼µå¸¦ »ç¿ëÇØ ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͸¦ ¾ò¾î¿À·Á¸é, ¸ñÀûÀÇ ÀÎÅÍÆäÀ̽ºÀÇ Æ÷ÀÎÅ͸¦ º¯¼ö·Î¼ ¼±¾ðÇØ, ±× º¯¼öÀÇ ÁÖ¼Ò¸¦ ¸Þ¼µå¿¡ °Ç³×ÁØ´Ù. Áï, Æ÷ÀÎÅÍÀÇ ÁÖ¼Ò¸¦ ¸Þ¼µå¿¡ °Ç³×ÁØ´Ù. ¸Þ¼µå°¡ µ¹¾Æ¿ÔÀ» ¶§, º¯¼ö´Â ¿ä±¸µÈ ÀÎÅÍÆäÀ̽º¸¦ °¡¸®Å°°í ÀÖ´Ù. ÀÌ Æ÷ÀÎÅ͸¦ »ç¿ëÇÏ¸é ±× ÀÎÅÍÆäÀ̽ºÀÇ ÀÓÀÇÀÇ ¸Þ¼µå¸¦ È£ÃâÇÒ ¼ö°¡ ÀÖ´Ù. ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍÀÇ »ç¿ë¹ý¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â, ¡¸COM ÀÎÅÍÆäÀ̽ºÀÇ »ç¿ë¹ý¡¹À» ÂüÁ¶ÇÒ°Í.