Самый простой способ контролировать сторонние приложения Windows для нажатия клавиш

Как видно из заголовка, какой самый простой способ отслеживать конкретные нажатия клавиш в стороннем приложении Windows?

Справочная информация: Arcmap 10.2 печально известен своими сбоями. Во время редактирования нет встроенной функции автосохранения, поэтому я часто теряю данные. Хотя очевидно, что лучше всего не забывать периодически сохранять свои правки, я хотел бы знать, смогу ли я автоматизировать это. Я использовал простую оболочку vbscript (см. Ниже), которая отправляет нажатие клавиши "ctrl + alt + shift + S" (сочетание клавиш сохранения правок) каждые 5 минут. Это несколько облегчает ситуацию, хотя недостатком является то, что если вы находитесь в середине редактирования, когда это произойдет, вы потеряете текущее редактирование.

Я думаю, что я мог бы преодолеть это, если бы я мог найти способ отслеживать клавишу "F2" (нажимается после каждого редактирования), а затем выполнять команду сохранения изменений только после того, как это обнаружено. Я понимаю, что это может быть невозможно с VBScript. Я надеялся, что существует "противоположность" SendKeys, хотя не смог найти ничего подобного. Какие-либо предложения?

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("""C:\Program Files (x86)\ArcGIS\Desktop10.2\bin\ArcMap.exe""")

Do While True
  Wscript.Sleep 300000
  objShell.SendKeys "^%+S"
Loop

0 ответов

Другие вопросы по тегам