Você tentou uma abordagem combinada de atalhos?
; $ = Force keyboard hook such that Send command won't trigger itself
; * = Prefix to allow firing with any other hotkey combination as long as that key is pressed
$*Browser_Home::
If GetKeyState("Alt", "P") ; See if user is holding the Alt key down
Send {Browser_Home}
Else
Send {Media_Next}
Return
Ou combinado usando o operador ternário:
$Browser_Home::Send, % GetKeyState("Alt", "P") ? "{Browser_Home}" : "{Media_Next}"
Eu não sei se isso realmente funciona ou não (ou seja, não testado), apenas algo para tentar.
Às vezes é mais fácil depurar onde as coisas estão dando errado quando você tem um atalho combinado adicionando MsgBox
declarações nos vários casos de teste para ver quais estão ou não em execução e, em seguida, se elas parecem ser executadas (por um declaração particular de envio, por exemplo), então você pode procurar no log de pressionamento de tecla através do ícone da bandeja e ver o que realmente foi enviado, ou possivelmente ignorado / bloqueado devido à sintaxe de atalho (se for configurado inadvertidamente de uma maneira que o AutoHotkey está bloqueando o que você gostaria de enviar)