A taxa de repetição e o atraso do teclado do Windows 7 são redefinidos ao retomar do modo de espera / suspensão

20

Eu sempre mantenho a taxa de repetição do teclado no máximo e o atraso no mínimo para otimizar a capacidade de resposta do teclado.

No Windows 7, no entanto, descobri que a taxa e o atraso são redefinidos para os padrões (ou seja, aquele definido com uma nova instalação do Windows) sempre que o sistema sai do modo de suspensão e requer a abertura do miniaplicativo do painel de controle do teclado (que já mostra o configurações desejadas) e manualmente, pressionando Enter.

Vi algumas postagens nos fóruns de suporte da Microsoft, mas não há soluções. Alguém sabe uma maneira de corrigir isso?

Synetech
fonte
Parece ser um problema de gerenciamento de energia. Você usa um notebook?
NGLN
@NGLN, não; Área de Trabalho.
Synetech
Como você ainda não aceitou uma resposta, dê uma olhada na minha resposta revisada, se desejar.
31818 Frank Conijn

Respostas:

10

Eu tive o mesmo problema. Muito irritante. Então, escrevi um pequeno aplicativo de barra de tarefas que redefine a taxa de repetição e o atraso do teclado quando ele é clicado duas vezes. Ele deve redefinir a taxa e o atraso quando sai do sono, mas às vezes funciona, às vezes não. Mas clicar duas vezes no pequeno ícone da barra de tarefas é tão fácil que não me incomodei em depurar isso até agora.

Faça o download da fonte aqui: http://thumpers-hole.net/KeyboardReset.zip
Baixe apenas o aplicativo aqui: http://thumpers-hole.net/KeyboardReset-JustExe.zip

Espero que isto ajude.

EDIT: Link fixo. Desculpe pelo link errado.

chris
fonte
Obrigado pela solução alternativa. Vi uma solução semelhante apresentada em um segmento do Microsoft Answers - possivelmente de você. (Espero Maggie alguma forma fica melhor.)
Synetech
De nada. Como eu disse, sinto sua dor naquele motivo pelo qual fiz o aplicativo. E obrigado por seus pensamentos sobre Maggie. Ela era uma mulher maravilhosa, mas agora está em um lugar melhor.
chris
OPA, desculpe; Eu não percebi essa parte. Perdemos um gato (que era como uma criança) por câncer de pulmão há alguns anos atrás. Ele não estava se sentindo bem, então o trouxemos ao veterinário para melhorar e tivemos que colocá-lo para dormir e ir para casa sem ele. Não tenho certeza do que é melhor, uma entrada longa ou uma perda repentina.
Synetech
Obrigado Chris, carreguei suas fontes aqui: github.com/lallousx86/KeyboardSpeedReset . Pretendo adicionar algumas alterações e mantê-lo de código aberto.
Elias Bachaalany
6

A resposta selecionada por chris não funcionou na minha instalação do Win 8 de 64 bits. Esta linha pode ser executada a partir de um arquivo em lotes para redefinir a taxa.

mode con: rate=32 delay=1

Eu apenas o executo a partir de um atalho.

Fonte: https://forums.lenovo.com/t5/IdeaPad-YUVZ-and-P-series/Re-Y50-Windows-8-Keyboard-response-too-slow-after-coming-back/mp/1809426

Editar 1

O arquivo em lote pode ser adicionado como uma tarefa agendada para execução após o laptop sair do modo de suspensão. Aparece brevemente uma janela da linha de comando, mas evita ter que se preocupar em executá-la manualmente.

Configure a tarefa com um acionador personalizado com este filtro

<QueryList>
  <Query Id="0" Path="System">
    <Select Path="System">*[System[Provider[@Name='Microsoft-Windows-Power-Troubleshooter'] and (Level=4 or Level=0) and (EventID=1)]]</Select>
  </Query>
</QueryList>

Editar 2

O texto acima é para o Windows 8. Para responder ao comentário de Frank implementado no Windows 7. Isso pode funcionar, mas não tenho sistema para testar. Vou editar e remover se não o fizer. Com base nesta resposta /superuser//a/84453/400252

Crie um arquivo em lote (keyboard.bat) no seu PC contendo o comando mode acima.

Abra o Agendador de tarefas. Clique com o botão direito do mouse em Task Scheduler Library e selecione Create Task.

Nomeie a tarefa.

Na guia Disparador, clique em Novo. Comece a tarefa: Em um evento. Log: Microsoft-Windows-Kernel-Power / Thermal-Operational. Fonte: Kernel-Power. ID do evento 1.

Na guia Ações, clique em Novo. Ação: Inicie um programa. Vá para o arquivo em lotes que você criou.

Na guia Condições, desmarque Parar se o computador mudar para a energia da bateria.

Na guia Configurações, marque Executar tarefa o mais rápido possível após a falta de um início agendado.

Não tenho certeza se você precisa alterar as opções de segurança na guia geral relacionadas à execução quando conectado ou não, ou à execução com privilégios mais altos. Eu não tenho um sistema para o qual não posso testar isso.

Se o procedimento acima não funcionar, crie um atalho para o arquivo em lotes em algum lugar onde você possa executá-lo rapidamente quando necessário, como no menu Iniciar ou na barra de inicialização rápida.

Ganso
fonte
11
Eu acho que as configurações devem ser: "mode con: rate = 31 delay = 0" computerhope.com/modehlp.htm
Skorunka František
11
Você pode simplesmente digitar modeno prompt de comando do Windows ( cmd.exe) para exibir todos os seus valores atuais de configuração de conexão.
David C. Rankin
Estou muito interessado em sua tarefa agendada, mas precisaria de um guia de implementação passo a passo. Eu só tenho conhecimentos gerais de informática e apenas HTML, CSS, JavaScript e PHP.
31818 Frank Conijn
11
Resolvi meu problema de taxa de repetição. Após sua edição de 5 de abril, eu ainda não consegui executar a tarefa automaticamente. O problema foi o gatilho. Mas descobri que havia também a opção Trigger 'No desbloqueio da estação de trabalho'. Juntamente com informações de outro site, isso me permitiu curar o problema da taxa de repetição e ver por que outras sugestões não haviam funcionado (bem) antes. Veja minha resposta revisada para toda a história. Obrigado por me apontar na direção certa.
31818 Frank Conijn
4

A resposta do Goose do formulário de comando funciona no meu sistema, mas eu não estava satisfeito em executá-lo manualmente. Se você também deseja automatizar o processo, siga estas instruções simples:

  1. Baixar NirCmd
  2. Coloque nircmd.exe na sua pasta do Windows
  3. Agendador de tarefas aberto
  4. Crie uma nova tarefa e nomeie-a como desejar
  5. Crie um novo gatilho com essas configurações: (Inicie a tarefa: em um evento, Log: Sistema, Origem: Power-Troubleshooter, ID do Evento: 1)
  6. Crie uma nova ação com estas configurações: (Ação: Iniciar um programa, Programa / script: nircmd, Incluir argumentos (opcional): modo execmd con: rate = 32 delay = 1)
  7. Na guia Condições, desmarque "Iniciar a tarefa apenas se o computador estiver com energia CA)
Xtal10
fonte
O comando Goose também funciona para mim, seja a taxa máxima de 31 (pelo menos no Win7 Pro). No entanto, seu NirCmd não. Ele é executado no logon, como posso ver no Agendador de tarefas, portanto, seu guia de instalação está correto. Mas isso não altera a taxa de repetição ou o atraso. Eu os tenho definido em 28/2, mas depois que o Agendador de tarefas fez o NirCmd executar, minha máquina permaneceu em 31/0. Espero que você ainda esteja "ouvindo" esse tópico.
31818 Frank Conijn
1

[EDIT: resposta completamente revisada]

Algumas observações, duas soluções e um aviso sobre alterações no Registro. As observações melhorarão sua compreensão e são necessárias para o diagnóstico diferencial do seu problema.

.

AS OBSERVAÇÕES

  1. O problema ocorreu / ocorre em princípio em todas as versões do Win: XP, Vista, 7, 8 e 10. Eu li isso aqui e em outros fóruns.
  2. O problema ocorre em laptops e desktops.
  3. É relatado que o problema ocorre nas máquinas Lenovo e Dell, embora em muitos relatórios nenhuma marca seja mencionada. (Se a sua máquina for de uma marca diferente, deixe um comentário.)
  4. Há uma diferença entre sono (= espera) e hibernação. E você pode ter 'suspensão híbrida' em sua máquina. Para toda a história, consulte https://www.howtogeek.com/102897/whats-the-difference-between-sleep-and-hibernate-in-windows/ .
  5. Existem quatro circunstâncias em que você deve digitar sua senha do Windows, cada uma com sua própria indicação acima do campo de senha:
    • Depois que a tela foi bloqueada. Indicação: 'Bloqueado'.
    • Depois de reiniciar. Indicação: nenhuma.
    • Após o logoff (o que também significa que todos os programas foram fechados). Indicação: nenhuma.
    • Depois de trocar de usuário. Indicação: no caso de apenas um usuário: 'Conectado' (sim, 'ligado'); no caso de vários usuários, isso pode ser diferente (não posso testar isso).

Veja quando exatamente o seu problema ocorre, por meio da indicação. Se você não usar uma senha : Painel de controle> Opções de energia> Painel esquerdo: 'Exigir uma senha'> selecione 'Exigir uma senha'. As soluções a seguir são para o caso 'Bloqueado', que eu acho que é a grande maioria dos casos. Se o seu caso for diferente, deixe um comentário.

.

AS SOLUÇÕES

As duas soluções são melhorias de sugestões de outros, aqui e em outros lugares.

A primeira é uma solução rápida, para laptops: Painel de controle> Opções de energia (ou equivalente)> 'Quando fecho a tampa': não faça nada (2x). Isso pode resolver o seu problema, mesmo que o laptop não acorde mais automaticamente depois de abrir a tampa.

A segunda é uma solução avançada, para laptops e desktops: um comando automatizado cmd.exe (DOS) que redefine a taxa de repetição de caracteres (que é chamada oficialmente) para o máximo, imediatamente após o desbloqueio do sistema. Aqui está o Como:

A. Abra o Bloco de notas e digite mode con: rate=31 delay=0. Superior a 31 é inútil, atraso = 0 é. Salve-o em uma pasta do sistema Windows (por exemplo, C: \ Windows), nomeando-o como aplicável, como CharRepeatReset.bat. O .bat é uma obrigação.

B. Clique duas vezes no arquivo e veja se ele redefine a taxa de repetição. Nesse caso, você pode automatizar esse clique duplo da seguinte maneira:

  • Iniciar> Pesquisa> digite: tarefa> Agendador de Tarefas.
  • Painel direito: criar tarefa. Isso abre uma janela com as guias Geral, Disparadores, Ações e Condições.
  • Geral> Nome: o nome do seu arquivo sem o .bat (por exemplo, CharRepeatReset). Por enquanto, deixe todas as outras configurações nessa guia como estão.
  • Disparadores> Novo> No desbloqueio da estação de trabalho> Qualquer usuário.
  • Ações> Novo> Iniciar um programa> Navegue até o arquivo .bat.
  • Condições> Desmarque 'Iniciar a tarefa apenas se o computador estiver com energia CA'.
  • Clique em 'OK' (não é necessário alterar nada em Configurações).

Deixe-me saber como funciona, aqui ou via f [dot] conijn [at] conijnconsultancy [dot] com.

.

AVISO RELATIVO A ALTERAÇÕES DE REGISTRO

Isso se refere às alterações feitas em HKEY_CURRENT_USER \ Control Panel \ Accessibility \ Keyboard Response, sugeridas algumas vezes. Eu tentei isso de várias maneiras e pode funcionar, mas em todos os casos, ele traz sérios efeitos colaterais. Desde o processador entrar em overdrive para concluir os congelamentos que só poderiam ser resolvidos com a interrupção de energia. O último faz com que você perca arquivos não salvos. Portanto, tenha muito cuidado com isso.

Frank Conijn
fonte
Eu tenho o mesmo problema no Win8 e agora no Win10. Lenovo Yoga 12.
Skorunka František
@ SkorunkaFrantišek - Veja se a resposta revisada contém uma cura para você.
31818 Frank Conijn
0

entrar:

  1. Painel de controle
  2. Centro de facilidade de acesso
  3. tornar o teclado mais fácil de usar
  4. chaves de filtro de configuração
  5. repetição de configuração e teclas lentas
Robert
fonte
11
Nice encontrado, mas não é o desejo de desacelerar as teclas, mas sim.
NGLN
3
@robert Eu já os tenho definidos para a taxa máxima de repetição e atraso mínimo. O problema é que as configurações são perdidas quando eu saio do modo de espera (como a pergunta indica claramente).
22411 Synetech