#c# #mouse #mouseevent #multipoint
#c# #мышь #mouseevent #многоточечный
Вопрос:
Я внедряю программу на C #, которая может «воспроизводить» несколько экземпляров игры одновременно. Действия созданного экземпляра основаны на моих действиях. Например, когда я нажимаю на позиции X, Y основного экземпляра, щелчок мыши будет в той же позиции во всех других созданных экземплярах.
Я могу выполнить щелчок мыши, мышь вниз, мышь вверх, подключив событие мыши, и имитировать один и тот же щелчок мыши по позиции в зависимости от положения каждого игрового окна. Однако этот подход не помогает, если дело доходит до перетаскивания мыши. И это приводит к некоторому снижению производительности, когда мне приходится перебирать все мои игровые экземпляры, чтобы выполнить виртуальный щелчок мыши.
Я узнал, что можно создать несколько мыши, используя MultiPoint SDK от Microsoft. Однако я не смог найти никакой документации о том, возможно ли имитировать несколько событий щелчка мышью (кроме моего) в C #? Если это так, то как я могу это сделать?
Спасибо
Ответ №1:
Если вы не работаете с программой, которую вы не писали, я думаю, вы можете использовать неправильный API для работы.
Если вам нужно написать сценарий нескольких действий в нескольких окнах, вам, вероятно, лучше запускать их последовательно. Это будет проще кодировать и отлаживать, и вам не придется делать ничего особенного. Просто напишите сценарий каждого действия последовательно, а затем выполните их.
Комментарии:
1. Вы имеете в виду использование Marco? Но он не поддерживает некоторые модификации в реальном времени. Поскольку это приложение похоже на эмулятор для «фактического» запуска игры на нем, мне нужно иметь возможность провести «реальный» игровой тест. В любом случае, этот подход кажется бессмысленным. Спасибо за ваше предложение.
2. Я имел в виду, что вместо того, чтобы пытаться использовать многоточечный API, нужно просто прописывать клики один за другим в нескольких окнах приложения. Если вам нужны действия в режиме реального времени, и вы не можете изменить код, я рекомендую вам развернуть несколько виртуальных машин и выполнить сценарии тестов по всей ферме.
3. Спасибо за ваше предложение. Я пытаюсь создать эмулятор на основе . вместо этого dll. Я отмечу ваш пост как ответ и закрою этот вопрос.