Здравствуйте, Аркадий, Вы писали:
А>Сделал — то же самое
Причем попробовал сохранять в GIT и извлекать, используя напрямую, как IDispatch, так и сам IUpTaskEvents.
А>В случае, если FireEvent вызывается в основном потоке — событие исполняется, всё как и должно быть. В случае, если в слушающем потоке — не работает.
Аркадий, а каким образом вы используете GIT?
У меня с этим были тоже проблемы.
Нужно делать так:
1. Тот поток, который вызывает Advise() должен создать GIT, поместить в него указатель, освободить указатель на GIT.
2. Поток, который генерирует события, тоже должен создать GIT, получить интерфейс по куки, сохранить полученный интерфейс, освободить указатель на GIT.
Если ты в каком-то потоке создашь GIT, сохранишь указатель на него и будешь его использовать из другого потока, то работать не будет. По крайней мере у меня так не работало. GIT нужно создавать в тот моент когда он становится нужен.