Modifique la tecla de acceso rápido para que solo se active cuando el área de texto no esté enfocada

Modifique la tecla de acceso rápido para que solo se active cuando el área de texto no esté enfocada

El siguiente script activa un programa de texto sublime cuando el usuario escribe "sub":

:*:sub::   ;
Run "C:\Program Files\Sublime Text 3\sublime_text.exe" 
return

El problema es que también se activa cuando estoy escribiendo texto en un área de texto, como un documento de Word, un bloc de notas o cualquier lugar donde se pueda escribir texto. ¿Se puede modificar el script para que solo se active cuando un área de texto no esté enfocada?

Respuesta1

:*b0:sub::
Sleep, 200
ControlGetText, OutputVar,,A
;MsgBox, %OutputVar%
;StringMid, a,OutputVar,StrLen(OutputVar)-2, 3
;MsgBox, %a%
;if not a="sub"
if not InStr(OutputVar,"sub")
    Run "notepad" 
return

Esto funciona muy mal, pero funciona en el bloc de notas. Problema con ControlGetText: no puedo recuperar texto (control incorrecto, codificación extraña) de la mayoría de las aplicaciones o lo uso incorrectamente. enAutoItControlGetText("[Active]","","") recupera texto mucho mejor.

información relacionada