Проблема с sendkeys в.NET

У меня есть приложение Windows, где я использую, отправляют ключи для навигации от одного окна до другого. Мой отправлять сочетание клавиш похож на активацию другого окна с в моем приложении и отправке нажатий клавиш к тому окну. Но нажатия клавиш, которые я отправляю, становятся обновленными в том же окне, где я активирую другое окно.

Но после немногих нажатий клавиш это идет в другое окно. Кажется, что проблема synchonization с отправляет ключи. Есть ли способ указать, что операция тока отправляет, ключ закончен, прежде, чем отправить следующий sendkey.

1
задан Nayana Setty 21 May 2010 в 06:59
поделиться

2 ответа

Вы пробовали использовать SendKeys.SendWait . Это будет ждать, пока ключ будет отправлен, и действие будет обработано, прежде чем продолжить.

Поскольку окна находятся в вашем собственном приложении, почему бы вместо использования SendKeys не предоставить набор функций для выполнения действий.Функции могут создавать окно после того, как окна созданы и активны, что вы можете обнаружить, обработав событие Activated , затем вы можете использовать SendKeys для отправки нажатий клавиш в новое окно, если вам действительно нужно, в противном случае снова в классе окна есть функции, которые вы можете вызывать для выполнения операций, вызываемых нажатиями клавиш. Вероятно, вы могли бы определить общий интерфейс , который реализует ваши окна, чтобы облегчить это взаимодействие.

0
ответ дан 3 September 2019 в 00:24
поделиться

Я обнаружил, что ключи отправки ненадежны. Попробуйте вместо этого использовать имитатор ввода .

2
ответ дан 3 September 2019 в 00:24
поделиться
Другие вопросы по тегам:

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