Здравствуйте VictorV, вы писали:
VV>Привет, VV>Помогите новичку. VV>Есть ActiveX (для IE) на VB, нужно банально выделить функцию в отдельный поток, но банально это было в С++, а тут... VV>Все примеры, от "производителя" валятся на завершении потока. Что это? VV>Может у кого есть проверенный рецепт ?
VV>Спасибо всем, VV>Виктор
На VB у меня получилось реализовать многопоточное приложение только так: создается ActiveX.exe с Threading Model: Thread per Object и в нем class, назовем его, скажем, VControl. Чтобы создать поток надо создать экземпляр класса VControl. Если в новом потоке надо запустить какую-то задачу параллельно главному потоку, то сделать это можно например так: завести скрытую форму (называемую, скажем, frmProcess), создавать ее при создании объекта VControl. VControl должен иметь Property Get HWND() as Long, которое будет возвращать hwnd созданного окна. Тогда запускать какуй-нить задачу можно так Call PostMessage(ctl.HWND, WM_USER+100, 0, 0). Предварительно у скрытой формы должен быть организован субклассинг (или как там это по-умному называется :), и в обработчике события WM_USER+100 должны вызываться реализация задачи.