Как преобразовать любые слова в команды Autoit?

Этот код работает, только если я набираю комбинацию горячих клавиш клавиатуры (но я хочу ввести слово для выполнения кода Autoit).

Пример HotKeySet:

HotKeySet (“{F1}”, “calc”)

Func calc()
Local $iPID = ShellExecute (“calc.exe”)
EndFunc

Есть ли альтернатива Hotstringset.

Теперь в autohotkey можно превращать любые слова в команды.

Пример Autohotkey Languages:

Если я наберу calc, он выполнит код Autohotkey.

:*:calc::
run calc.exe
return
1
G. user17 27 Ноя 2017 в 15:54

1 ответ

Лучший ответ

С его помощью вы можете превращать любые слова в команды Autoit.

Шаг 1. Вы можете скачать файл HotStringSet.zip здесь. (входит в состав HotString.au3) HotKeySet против HotStringSet

Шаг 2 - Разархивируйте его + скопируйте вручную HotString.au3 в путь C: \ Program Files (x86) \ AutoIt3 \ Include

Шаг 3 - Теперь вы готовы использовать HotStringSet в любом скрипте Autoit.

enter image description here

Вы можете ввести на клавиатуре любой текст, например, в Wordpad: введите calc + Space, и он запустит калькулятор, и если вы наберете kbc + Space, он заменит текст kbc в клавиатуре, а если вы наберете pi + Space, он заменит текст пи преобразован в символ пи.

Напишите этот код Autoit.

#include <HotString.au3>

HotKeySet ('{F1}', 'quit')

HotStringSet('kbc{SPACE}', replace1)
HotStringSet('pi{SPACE}', replace2)
HotStringSet('calc{SPACE}', replace3)

Func quit()
Exit
EndFunc

Func replace1()
;MsgBox(0,'','You did typed kbc! :)')
send ('{BS 4}keyboard control ') ; replace [kbc] into [keyboard control]
EndFunc

Func replace2()
;MsgBox(0,'','You did typed pi! :)')
send ('{BS 3}{ASC 960} ') ; replace [pi] into [symbol p]
EndFunc

Func replace3()
;MsgBox(0,'','You did typed calc! :)')
Local $iPID = ShellExecute ('calc.exe') ; If you type calc it wil run the application calculator.
EndFunc

While 1
Sleep(10)
WEnd 
2
stevecody 28 Ноя 2017 в 19:35