Como remapear teclas especiais no laptop Asus?

11

Eu tenho o notebook Asus M51Sn , executando o Windows 7 (mas também o Linux, mas esta questão é apenas sobre o Windows). Como você pode ver na imagem a seguir, ele tem cinco teclas completamente inúteis na parte superior do teclado. Quero remapear essas chaves para coisas úteis.

insira a descrição da imagem aqui

Neste laptop, tenho que usar Fn+F5e Fn+F6alterar o brilho e Fn+F10, Fn+F11e Fn+F12silenciar ou alterar o volume. Essas ações são MUITO complicadas, pois precisam ser pressionadas duas mãos e preciso olhar o teclado para descobrir onde está a tecla correta. O que eu quero é remapear as teclas inúteis na parte superior (como visto na figura anterior) para alterar o brilho e o volume.

Como eu disse, preciso de uma solução para o Windows 7 (já remapeei as chaves no meu sistema Linux).

Instalei um programa da Asus chamado ATK Hotkey, responsável por mostrar mensagens OSD sobre alterações de brilho / volume. No entanto, este programa é muito ruim, pois é executado completamente oculto ao usuário e não possui nenhuma configuração. Nem mesmo os arquivos de configuração, possuem apenas alguns arquivos EXE e DLL, nada mais. É tão ruim que a tecla "abrir navegador" no meu teclado sempre inicie o Internet Explorer, mesmo que não seja o meu navegador padrão. Se necessário, desinstalarei com prazer este programa se encontrar algo melhor. (remapear as chaves para ações úteis é muito mais importante que as mensagens OSD)

Coisas que eu já tentei

Desinstalando a Tecla de Atalho ATK

Sem isso ATK Hotkey, ainda posso alterar o brilho (como provavelmente é tratado pelo BIOS), mas as Fn+F*teclas não alteram mais o volume.

SharpKeys 3.0

O SharpKeys 3.0 não conseguiu ler nenhuma das teclas especiais do meu laptop. Minha aposta é que eles não são pressionamentos de teclas reais, mas eventos da ACPI. Portanto, preciso de uma maneira de mapear alguns eventos da ACPI para ações úteis.

AutoHotkey

Tentei instalar o AutoHotkey e executar um script para encontrar o scancode de uma chave . Sem sorte, essas teclas especiais no meu laptop não parecem gerar eventos de scancode ou keypress. (recebi essa ideia de uma resposta do StackOverflow , que pena que não funcionou para mim)


Atualização, 4 anos depois : em 2014, esse notebook quebrou e eu parei de usá-lo. Além disso, não executo o Windows no meu notebook atual.

Denilson Sá Maia
fonte
@ Revolter: relacionado, mas não duplicado. Um teclado padrão envia pressionamentos de teclas para essas teclas extras. Este laptop Asus, por outro lado, parece enviar eventos ACPI que não podem ser facilmente personalizados.
Denilson Sá Maia

Respostas:

6

A partir do tema A ASUS Informações Booth (pelo Notebook fórum Review) , eu encontrei um link chamado Customize ASUS hotkeys . Esse link me enviou para o tópico Asus notebook keys, v1.3, naquele fórum:

Teclas para notebook Asus, v1.3

Este programa permite definir ações próprias para botões adicionais de notebooks da Asus.

Era tudo o que eu precisava! Além do mais: o código-fonte está incluído! (Pena que não tenho o Visual Studio).

No entanto, o programa do primeiro post tem um erro bobo da GUI, que foi corrigido posteriormente por outro usuário e depois lançado como AsusNbKeysCtr-1.3fix.zip (mas sem o código-fonte).

Usando esse programa (a versão fixa), eu era capaz de remapear as teclas extras laptop para Volume Up, Volume Downe Volume Mutecombinações de teclas, que são reconhecidos diretamente pelo Windows. Isso é ótimo e resolve metade do meu problema !

A outra metade, no entanto, envolve a alteração do brilho do monitor. Infelizmente, não há uma solução fácil para isso e preciso de um programa de linha de comando para aumentar e diminuir o brilho .

Encontrei dois aplicativos de linha de comando que permitem definir o brilho com algum valor, mas não permitem aumentar ou diminuir o brilho. O primeiro é o Brightener, escrito pelo usuário Ciaran . O segundo é o Display Brightness Vista Gadget, de edgylogic.com . Como eles não resolvem meu problema, ainda preciso de um programa para alterar o brilho.

Denilson Sá Maia
fonte
4

Provavelmente um pouco tarde para responder, mas depois de seguir o link após o link, encontrei uma versão do DMedia que substitui a versão normal e envia eventos gerais das teclas do teclado para reprodução de mídia. Eu sei que a pergunta era sobre outros botões, mas o fato de as teclas de mídia iniciarem um aplicativo aleatório a cada vez (e que no Windows 8 traz o WMP para o primeiro plano) me incomodou.

O aplicativo pode ser encontrado em formato binário aqui (há uma fonte no bitbucket, caso você o veja) http://3mptylab.blogspot.it/2012/09/how-to-make-asus-notebooks-media-keys.html

Basta baixar o arquivo rar, interromper o processo DMedia.exe, ir para a pasta de instalação do ATK Media, renomear o DMedia.exe original por precaução e colocar o DMedia.exe baixado na mesma pasta. Execute-o para fazê-lo funcionar (e normalmente deve ser iniciado na inicialização).

É baseado neste código, que funcionou apenas para um aplicativo. http://zaak404.wordpress.com/2011/05/09/controlling-foobar2000-with-asus-g73-media-keys/

Funcionando muito bem no meu Asus U30Jc no Windows 8 de 64 bits, enquanto todos os outros métodos não funcionaram corretamente.

Rodrigo Chiong
fonte
1
Já passaram 5 anos e sua resposta ainda é útil e a única que realmente me ajudou. Trabalhando como um encanto no notebook de 7 anos com o win10 (que não é suportado pela asus).
ghost
1

Vi seu comentário em outra resposta que eu deixei para definir o brilho, então modifiquei um pouco o aplicativo que escrevi para essa pergunta e criei um aplicativo de bandeja que você pode usar para controlar o brilho (as mesmas restrições se aplicam conforme os comentários no outro tópico) .

Esta versão do aplicativo é muito ruim no momento. Algum código seriamente ruim no momento, mas parece funcionar para mim de qualquer maneira. Atualmente, as teclas de atalho são codificadas como CTRL + ALT + UP / DOWN, mas como você verá, há uma caixa de diálogo disponível para configurar você mesmo. Não funciona no momento, mas vou resolver isso em algum momento.

Baixar

Quando eu resolver as configurações, vou limpar um pouco o código e publicá-lo aqui também.

Ciaran
fonte
Obrigado! Mas ei, não há necessidade de diálogos sofisticados! Se você pode fazer isso para que eu possa chamá-lo como brightener +1para aumentar (ou -1diminuir), basta! Uma interface simples de linha de comando é perfeita para minhas necessidades (porque eu já tenho outro programa para mapear uma chave para um comando).
Denilson Sá Maia
Em termos de design, não funcionaria muito bem. Aumentar 1% de cada vez significa abrir e fechar um aplicativo de console 100 vezes para ir de uma extremidade do espectro para outra. Um aplicativo de bandeja com teclas de atalho é provavelmente a melhor maneira de fazer isso. A menos que você possa argumentar contra isso.
Ciaran
Bem, desde que eu estou acostumado ao background Unix / Linux, os aplicativos de console são bastante naturais para mim. No entanto, no Windows, eles tendem a exibir a janela do prompt de comando, como você mencionou. Então ... talvez o programa GUI, quando chamado com alguns parâmetros da linha de comando, possa alterar o brilho e sair, sem abrir nenhuma janela. Bem, isso é apenas uma ideia. Preciso testar seu programa mais tarde, quando eu reiniciar no Windows.
Denilson Sá Maia
Ok, eu finalmente testei. Funciona, obrigado! Mas ele possui apenas 4 níveis de brilho (que, no meu monitor, são "escuros" e 3 níveis de "muito brilhante"), enquanto eu sei que meu monitor tem cerca de 10 a 15 níveis de brilho (e geralmente alterno entre os 3 níveis mais baixos ) Então ... seria melhor se não pulasse os níveis ao alterar o brilho.
Denilson Sá Maia