Есть 2 приложения:
1. Обычное Wpf окно — назовем его WpfSlave
2. Есть другое приложения тоже с окном. Предпочтительно обычное native, но для примера можно использовать и Wpf. Назовем его Master.
Задача:
При активном окне приложения Master дублировать движения мышки/ работа с клавиатурой в окно WpfSlave. При этом чтобы поведение окна WpfSlave было бы таким же, как если бы оно было активным и с ним производили эти действия.
Простейший вариант дублирования всех виндовых сообщений из окна Master в WpfSlave ни к чему не привело. Окно ни как не реагирует на эти сообщения. Альтернативный вариант вызвать события в ручную. Я пробовал используя VisualTreeHelper.HitTest находить элементы и вызывать события через RaiseEvent. Mouse Up/Down/Click сработали, но я не понял как релаизовать изменения контролов при наведении мышки (MouseOver), вызов MouseEnter не вызывается на котроле.
Вопросы:
— Есть ли способ релизовать задачу без ручного вызова событий (например как-нибудь заставить окно обрабатывать виндовые сообщения)?
— Если все же вызывать евенты в ручную можно ли где-нибудь найти правильный порядок вызова евентов, как реализовать MouseEnter/MouseLeave?