|
|
|
Асинхронное выполнение метода СOM
|
|||
|---|---|---|---|
|
#18+
Подскажите, плиз, как мне выполнить метод COM объекта асинхронно. Счас схема выполнения примерно такая : #import "comdllex.tlb" rename_namespace("VFPLib311") #define p(i) parm->p[(i)].val void FAR RunComVFP(ParamBlk FAR *parm) { IDispatch* _vfpptr = (IDispatch*)p(0).ev_long ; using namespace VFPLib311; CoInitialize(0); VFPLib311::ItestPtr m_myclass = (VFPLib311::ItestPtr)_vfpptr; _variant_t vresult; vresult = m_myclass->RunTest(); CoUninitialize(); } IDispatch передаю из другой проги. Все это работает , но метод RunTest() выполняется слишком долго. Как бы мне его асинхронно запустить? Компонента чей метод выполняется прдставляет из себя СOM EXE. Может в поток пихнуть, тогда как ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2004, 13:45 |
|
||
|
Асинхронное выполнение метода СOM
|
|||
|---|---|---|---|
|
#18+
Ну например так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. ш (';') (V),(V),, Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2004, 15:47 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=445&tid=2034896]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
38ms |
get tp. blocked users: |
2ms |
| others: | 205ms |
| total: | 346ms |

| 0 / 0 |
