void InvokeHelper ( DISPID dwDispID, ´Ü¾î wFlags, VARTYPE vtRet, void * pvRet, const ¹ÙÀÌÆ® ±îÁö * pbParamInfo, ... );
(COleException)À» ´øÁ®;
(COleDispatchException)À» ´øÁ®;
¸Å°³ º¯¼ö
dwDispID
¸Þ¼µå ¶Ç´Â ¼Ó¼º È£ÃâÀ» ³ªÅ¸³À´Ï´Ù. ÀÌ °ªÀº ÀϹÝÀûÀ¸·Î Classwizard¸¦ Á¦°øÇÑ¡£
wFlags
Ç÷¡±×¿¡ ´ë ÇÑ È£ÃâÀÇ ÄÁÅØ½ºÆ®¸¦ ¼³¸í ÇÏ´Â IDispatch::Invoke. °¡´ÉÇÑ °ª¿¡ ´ë ÇÑ Ç÷§Æû SDK ¸¦ ÂüÁ¶ ÇϽʽÿÀ.
vtRet
¹Ýȯ °ªÀÇ Çü½ÄÀ» ÁöÁ¤ÇÕ´Ï´Ù. °¡´ÉÇÑ °ª¿¡ ´ë ÇÑ ÁÖÀÇ ¼½¼ÇÀ» ÂüÁ¶ ÇϽʽÿÀ.
pvRet
º¯¼öÀÇ ¼Ó¼º °ªÀ» ¹Þ°Å³ª °ªÀ» ¹Ýȯ ÇÏ´Â ÁÖ¼ÒÀÔ´Ï´Ù. ±×°ÍÀº vtRet ¿¡ ÀÇÇØ ÁöÁ¤ µÈ Çü½ÄÀÌ ÀÏÄ¡ ÇØ¾ß ÇÕ´Ï´Ù.
pbParamInfo
PbParamInfo ´ÙÀ½°ú °°Àº ¸Å°³ º¯¼ö Çü½ÄÀ» ÁöÁ¤ ÇÏ´Â ¹ÙÀÌÆ® null·Î ³¡³ª´Â ¹®ÀÚ¿¿¡ ´ë ÇÑ Æ÷ÀÎÅÍ¡£
...
PbParamInfo ¿¡ ÁöÁ¤ µÈ Çü½ÄÀÇ ¸Å°³ º¯¼ö ¸ñ·Ï¡£
ÁÖÀÇ
°³Ã¼ ¸Þ¼µå ¶Ç´Â dwDispID, wFlags¿¡ ÀÇÇØ ÁöÁ¤ µÈ ÄÁÅØ½ºÆ®¿¡¼ ÁöÁ¤ µÈ ¼Ó¼ºÀ» È£Ãâ ÇÕ´Ï´Ù. PbParamInfo ¸Å°³ º¯¼ö´Â ¸Þ¼µå³ª ¼Ó¼º¿¡ Àü´Þ µÈ ¸Å°³ º¯¼öÀÇ Çü½ÄÀ» ÁöÁ¤ ÇÕ´Ï´Ù. °¡º¯ Àμö ¸ñ·Ï ... ¿¡ ÀÇÇØ Ç¥½Ã µË´Ï´Ù ±¸¹® ¼±¾ð¡£
VtRet Àμö¿¡ ´ëÇØ °¡´ÉÇÑ °ªÀº VARENUM ¿°ÅÇü¿¡¼ °¡Á®¿É´Ï´Ù. °¡´ÉÇÑ °ªÀº ´ÙÀ½°ú °°½À´Ï´Ù.:
| ±âÈ£ | ¹Ýȯ Çü½Ä |
| VT_EMPTY | void |
| VT_I2 | ªÀº |
| VT_I4 | ±ä |
| VT_R4 | ºÎµ¿ ¼Ò¼öÁ¡ |
| VT_R8 | ´õºí |
| VT_CY | CY |
| VT_DATE | ³¯Â¥ |
| VT_BSTR | BSTR |
| VT_DISPATCH | LPDISPATCH |
| ÄÚµù | SCODE |
| VT_BOOL | BOOL |
| VT_VARIANT | º¯Çü |
| ÇÑ´Ù | LPUNKNOWN |
PbParamInfo Àμö´Â VTS_ »ó¼öÀÇ °ø¹éÀ¸·Î ±¸ºÐ µÈ ¸ñ·ÏÀÔ´Ï´Ù. (¾Æ´Ñ ½°Ç¥) °ø¹éÀ¸·Î ±¸ºÐ µÈ ´ÙÀ½ÀÌ °ª Áß Çϳª ÀÌ»óÀÇ ÇÔ¼ö¸¦ ¸Å°³ º¯¼ö ¸ñ·ÏÀ» ÁöÁ¤ ÇÕ´Ï´Ù. °¡´ÉÇÑ °ªÀº EVENT_CUSTOM ¸ÅÅ©·Î ÇÔ²² ³ª¿ µÇ¾î ÀÖ½À´Ï´Ù.
ÀÌ ÇÔ¼ö´Â ¸Å°³ º¯¼ö VARIANTARG °ªÀ¸·Î º¯È¯ ´ÙÀ½ È£Ãâ¿¡¼ IDispatch::Invoke ¹æ¹ý. Invoke È£ÃâÀÌ ½ÇÆÐ ÇÏ´Â °æ¿ìÀÌ ÇÔ¼ö´Â ¿¹¿Ü°¡ throw µË´Ï´Ù. ÀÌ ÇÔ¼ö; COleException °³Ã¼¸¦ throw ÇÏ´Â SCODE (»óÅ ÄÚµå) IDispatch::Invoke ¿¡ ÀÇÇØ ¹Ýȯ µÈ DISP_E_EXCEPTION°æ¿ì ±×·¸Áö ¾ÊÀ¸¸é COleDispatchException throw¡£
ÀÚ¼¼ÇÑ ³»¿ëÀº ÂüÁ¶ VARIANTARG, IDispatch, IDispatch::Invoke, ±×¸®°í Platform SDK ¿¡¼ COM ¿À·ù ÄÚµå ±¸Á¶¡£
COleDispatchDriver °³¿ä |nbsp; Ŭ·¡½º ¸â¹ö (ko) | °èÃþ ±¸Á¶ Â÷Æ®(&N)
Âü°í Ç׸ñnbsp;COleException, COleDispatchException(&N)