Здравствуйте bnk, Вы писали:
bnk>Здравствуйте Максим Алексейкин, Вы писали:
МА>>Event обрабатывается синхронно. Т.е. пока твой конрол и VB не обработали первый, второй евент не возникнет. Может как второй WM_MY не доходит до окна контрола?
bnk>Максим, проблема в том что второй евент возникает. Я проверял в дебаггере, ситуация следующая: Входит в обработчик WM_MY, запускается Fire_MY(..), после чего, не выходя из этого обработчика , входит в него повторно ха-ха
и снова делает Fire_MY()
bnk>Происходит енто, я думаю, потому, что WM_MY's посылаются компоненту той самой 'worker thread' (асинхронно), а когда компонент ожидает 'окончания евета' в Fire_MY(), он радостно диспатчит все WM_xx, и входит в обработчик повторно.
bnk>В чем и вопрос, с какой стороны это безобразие можно объехать
Попробуй ограничить доступ к Fire_MY() при помощи критической секции. Т.е. пока не вернулся из первого евента не делать следующие.
Удачи.