Задать вопрос
@druidus

C# Как двигать мышкой в окне в многопоточном режиме?

C#, Visual Studio.
Есть функция SetCursorPos() из библиотеки user32.dll, но она нормально работает лишь когда окно активно и в один поток. Если окно не активно, то мышка не двигается в этом окне. Есть задача двигать мышкой в многопотоке указывая в каком окне её двигать. Для идентификации окна ясное дело используется заголовок окна. Подскажите пожалуйста каким образом решается задача перемещения мыши в многопоточном режиме, когда в каждом потоке своё окно, и не используя функцию SetCursorPos()?
Если можно, то с примером кода.
  • Вопрос задан
  • 592 просмотра
Подписаться 1 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
@nrv
Окно своё или чужое (пытаетесь управлять чужим приложением)? Если свое, то есть такой момент, что делать что-то с окном можно только из потока, который создал это окно (или с главного потока приложения, не помню уже блин). Ну и тогда придется каким-то образом передавать сообщение (команду) в тот_самый_поток_только_который_может_управлять_окном, получив которое он будет что-то делать с окном (например для того, чтобы сделать его активным).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы