Lança aplicativos ou executa comandos no Windows usando atalhos

0

É possível registrar atalhos no Windows 7 para que, independentemente de onde você esteja procurando (Desktop, uma pasta, etc.), o atalho seja "ouvido" e a ação apropriada seja executada.

Por exemplo, criar um atalho na pasta System32 que funcionará se você usar Executar com o nome do atalho, não funcionará se você definir uma combinação de teclas quando o foco estiver definido na área de trabalho, por exemplo.

Existe uma maneira nativa de registrar atalhos de nível superior ou até mesmo um aplicativo para ativar isso?

Exemplo de coisas que eu quero atalhos de teclado para:

  • abra uma pasta específica como% path%
  • crie um novo arquivo .js na pasta atual
  • inicie um aplicativo eventualmente com seu caminho definido para o local atual se o aplicativo suportar isso (por exemplo, prompt de comando)

Obrigado.

    
por Francisc 23.09.2012 / 20:34

1 resposta

1

Você provavelmente poderia fazer isso com AutoHotKey .

Por exemplo, digamos que você queira que o atalho Win + S lance MyScript . Instale o AutoHotKey, copie o seguinte para o arquivo AutoHotkey.ahk e reinicie o AutoHotKey:

SetTitleMatchMode RegEx
return

; Stuff to do when Windows Explorer is open
;
#IfWinActive ahk_class ExploreWClass|CabinetWClass

    #s::
        LaunchMyScriptInCurrent()
    return
#IfWinActive


; Launches a custom script in the directory browsed in Explorer.
; Note: expecting to be run when the active window is Explorer.
;
LaunchMyScriptInCurrent()
{
    ; This is required to get the full path of the file from the address bar
    WinGetText, full_path, A

    ; Split on newline ('n)
    StringSplit, word_array, full_path, 'n
    ; Take the first element from the array
    full_path = %word_array1%   

    ; strip to bare address
    full_path := RegExReplace(full_path, "^Address: ", "")

    ; Just in case - remove all carriage returns ('r)
    StringReplace, full_path, full_path, 'r, , all

    IfInString full_path, \
    {
        Run, C:\Path\To\MyScript "%full_path%"
    }
    else
    {
        Run, C:\Path\To\MyScript "C:\ "
    }
}

Inspirado nessas duas respostas:

  1. link
  2. link
por 23.09.2012 / 22:59