захват, какие ключи были использованы для запуска vbscript - PullRequest
0 голосов
/ 18 мая 2009

У меня есть приложение, которое имеет возможности макросов. Когда я сопоставляю некоторые клавиши на клавиатуре для выполнения «макроса», я также могу вместо этого запустить vbscript.

Что я хотел бы попробовать, так это выяснить, какие ключи были использованы для запуска скрипта в VBScript. Возможно ли это сделать? Может ли быть способ в VBScript, чтобы выяснить, какие клавиши были в последний раз касались клавиатуры, а затем я мог бы применить свою логику.

Цель этого состоит в том, чтобы сохранить код в одном файле .vb вместо нескольких отдельных файлов сценариев .vb (по одному для каждого сопоставления клавиатуры, возможно 3-4). Очевидно, мы хотим сохранить только один файл вместо нескольких файлов с практически одинаковым кодом в каждом.

Я склоняюсь к мысли, что это невозможно, но я подумал, что это будет достойный вопрос для масс StackOverflow. Спасибо всем за помощь!

Ответы [ 2 ]

2 голосов
/ 18 мая 2009

То, что вы просите, невозможно.

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

0 голосов
/ 19 мая 2009

Я согласен с aphoria, единственный способ сделать что-то подобное возможно, если ваше программное обеспечение для раскладки клавиатуры позволяет вам назначить скрипт / команду с параметрами / аргументами. Например, если вы использовали

c:\Temp\something.vbs

тогда вы бы изменили это на

%WINDIR%\system32\wscript.exe c:\temp\something.vbs "Ctrl-Alt-R"

Затем в своем коде vbscript вы можете собрать аргумент, используя коллекцию объектов wscript.Arguments, чтобы выполнять действия на основе того, какой аргумент / параметр был передан. Смотрите следующие две ссылки для получения дополнительной информации:

http://msdn.microsoft.com/en-us/library/z2b05k8s(VS.85).aspx http://www.microsoft.com/technet/scriptcenter/resources/qanda/sept04/hey0915.mspx

...