Tweak mouse e tastiera

Code di input più grandi, un congelamento più breve quando un hook di input si blocca, un ritardo di ripetizione dei tasti più breve. Niente di questo fa arrivare un clic prima.

Cosa cambia questa sezione

Code di input più grandi, un congelamento più breve quando un hook di input si blocca, un ritardo di ripetizione dei tasti più breve. Niente di questo fa arrivare un clic prima.

ImpostazioneCosa faPercorso di registro
Dimensione della coda dati del mouseAlza da 100 a 150 il buffer dei report del driver di classe del mouse. Non accorcia la latenza; impedisce a un mouse ad alta frequenza di perdere report quando il thread di lettura si blocca. Scritto anche in mouhid, dove non è stato trovato nulla che lo legga.HKLM\...\Services\mouclass + mouhid\Parameters\MouseDataQueueSize
Dimensione della coda dati della tastieraAlza da 100 a 150 il buffer dei report dei tasti del driver di classe della tastiera. Non accorcia la latenza; lascia margine contro la perdita di input. Scritto anche in kbdhid, dove non è stato trovato nulla che lo legga.HKLM\...\Services\kbdclass + kbdhid\Parameters\KeyboardDataQueueSize
Limita per quanto tempo un hook di input bloccato può fermare il mouseWindows salta un hook di input che non risponde più allo scadere di questo timeout; questa voce lo imposta a un secondo, il massimo consentito da Windows 10 1709 e successivi. Senza impostazione, il valore predefinito non è documentato e non è stato misurato. Anche un hook solo lento sotto carico può essere scartato; riavviare il suo strumento lo riporta in funzione.HKCU\Control Panel\Desktop\LowLevelHooksTimeout
Riduci il ritardo di ripetizione dei tasti al minimoRiduce a 250 ms (il passo più breve) l'attesa di mezzo secondo prima che un tasto tenuto premuto si ripeta e imposta la velocità di ripetizione massima. Le singole pressioni in gioco non passano mai da qui; si nota in console, chat e menu. Troppo rapido mentre scrivi? Annullalo nella pagina Fix.HKCU\Control Panel\Keyboard\KeyboardDelay + KeyboardSpeed

Come si applica

  1. Apri w0a
  2. Vai alla pagina Tweak Regedit nel menu a sinistra
  3. Trova questa sezione e premi Applica sulle voci che vuoi

Ogni voce ha il suo pulsante, quindi non sei obbligato ad applicare una sezione intera — Applica tutto, in cima alla pagina, è lì per quando le vuoi davvero tutte.

Come si annulla

Due strade, funzionano entrambe:

applicata. Rimette tutto quello che è stato applicato dopo quel punto, punti di controllo successivi inclusi — la conferma lo dice esattamente prima di partire.

condizioni. Non legge un backup, quindi funziona anche se il file di backup di w0a non c'è più.

Il registro di annullamento sta in %ProgramData%\w0a\backup.json, fuori dal tuo profilo utente.

Il rischio

Tutto quello che c'è qui è un valore documentato e supportato da Windows; niente di ciò è a livello kernel e niente è irreversibile. La frase onesta resta però questa: un'impostazione può non portarti nessun beneficio misurabile. Se applichi una modifica e non senti differenza, probabilmente hai ragione — queste pagine non ti vendono una sensazione, ti dicono cosa è stato cambiato.

Se vuoi misurarlo, vale la regola di leggere il benchmark: cambia una cosa per volta, e leggi i lows invece della media.

Prima, la frase onesta

Nessuna delle quattro caselle fa arrivare al gioco prima un clic o la pressione di un tasto. Due rendono più profondo un buffer, così è meno probabile che l'input vada perso quando il thread che lo legge si blocca; una accorcia il tempo per cui un hook di input bloccato può congelare mouse e tastiera; una cambia ciò che fa un tasto tenuto premuto. Se qualcuna di esse cambi una partita non è stato misurato: i report del mouse persi non sono mai stati contati con e senza la coda più grande, e il timeout dell'hook conta solo una volta che un hook ha smesso di rispondere.

Casella per casella

Dimensione della coda dati del mouse — scrive MouseDataQueueSize=150 (REG_DWORD) sotto HKLM\SYSTEM\CurrentControlSet\Services\mouclass\Parameters, e lo stesso sotto HKLM\SYSTEM\CurrentControlSet\Services\mouhid\Parameters. Il valore predefinito è 100 sul driver di classe, e un Windows pulito non ha alcun valore sotto mouhid. È una profondità di coda, non un'impostazione di latenza: una coda più piccola non può passare avanti un report prima, si limita a scartare report prima quando qualcosa smette per un attimo di svuotarla, e su un mouse a 8000 Hz un report scartato è input perso. 150 è un margine che non tratta la memoria della coda come gratuita. Solo di mouclass si sa che lo legge; un'analisi di mouhid.sys (10.0.26100.1) non trova quel nome, e quella scrittura resta finché non viene misurata. Viene letto al caricamento del driver: ha effetto dopo un riavvio.

Dimensione della coda dati della tastiera — lo stesso per la tastiera: KeyboardDataQueueSize=150 (REG_DWORD) sotto HKLM\SYSTEM\CurrentControlSet\Services\kbdclass\Parameters e HKLM\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters. Il valore predefinito è 100 su kbdclass e nulla sotto kbdhid; nemmeno kbdhid.sys contiene quel nome. Ha effetto dopo un riavvio.

Limita per quanto tempo un hook di input bloccato può fermare il mouse — scrive LowLevelHooksTimeout=1000 (REG_DWORD, millisecondi) sotto HKCU\Control Panel\Desktop. Overlay, strumenti per le macro e programmi di chat installano hook di basso livello attraverso cui passa ogni evento di input, uno dopo l'altro. Microsoft documenta che un hook che non ritorna entro questo tempo viene saltato — da Windows 7 in poi, rimosso in silenzio — e che da Windows 10 1709 in poi 1.000 ms è il massimo che Windows consente. Un secondo basta per un hook che è solo occupato, ed è abbastanza breve perché uno bloccato non si avverta come un congelamento. Il compromesso: anche un hook che è solo lento sotto carico può essere scartato; riavviare quello strumento lo riporta in funzione. Il valore predefinito di Windows è nessun valore. Quanto aspetti Windows in quel caso, Microsoft non lo dice e noi non l'abbiamo misurato. Ha effetto dopo una disconnessione e un nuovo accesso.

Riduci il ritardo di ripetizione dei tasti al minimo — scrive KeyboardDelay="0" e KeyboardSpeed="31", entrambi REG_SZ, sotto HKCU\Control Panel\Keyboard. Windows viene distribuito con "1" e "31". Microsoft colloca 0 a circa 250 ms e 31 a circa 30 ripetizioni al secondo, con i valori reali che dipendono dall'hardware. Stringhe, perché Windows ignora un DWORD scritto al loro posto. KeyboardSpeed viene scritto anche al suo valore predefinito di 31: un profilo di accessibilità può lasciarlo più basso. Ha effetto dopo una disconnessione e un nuovo accesso.

Come controllarlo da te

reg query "HKLM\SYSTEM\CurrentControlSet\Services\mouclass\Parameters" /v MouseDataQueueSize
reg query "HKLM\SYSTEM\CurrentControlSet\Services\mouhid\Parameters" /v MouseDataQueueSize
reg query "HKLM\SYSTEM\CurrentControlSet\Services\kbdclass\Parameters" /v KeyboardDataQueueSize
reg query "HKLM\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters" /v KeyboardDataQueueSize
reg query "HKCU\Control Panel\Desktop" /v LowLevelHooksTimeout
reg query "HKCU\Control Panel\Keyboard" /v KeyboardDelay
reg query "HKCU\Control Panel\Keyboard" /v KeyboardSpeed

reg query stampa un DWORD in esadecimale: 150 è 0x96, 100 è 0x64, 1000 è 0x3e8. Nessun valore sotto mouhid o kbdhid, o nessun LowLevelHooksTimeout, è ciò che ha un Windows pulito.

Cosa non fa questa sezione

Non tocca la velocità del puntatore. Una casella un tempo forzava MouseSensitivity sulla tacca 6/11, quella senza scala, scavalcando le velocità che le persone avevano scelto. I giochi che leggono l'input raw non vedono mai quel valore, quindi non cambiava nulla in un gioco e cambiava tutto fuori da esso; è stata rimossa.

Non rende mai una coda più piccola. Una build precedente scriveva 20, sotto il valore predefinito di 100, con un'etichetta che prometteva una coda più profonda; una coda più piccola non può consegnare un report prima, solo perderlo prima.

Fuori da questa pagina

Nella pagina Fix, Code di input rimette entrambi i valori delle code; Velocità e ritardo di ripetizione dei tasti ripristina la coppia della ripetizione senza toccare il mouse; Focus delle finestre e strumenti di supporto elimina il timeout dell'hook; Mouse, tastiera e touchpad ripristina le code e la coppia della ripetizione e reimposta anche l'accelerazione del puntatore e il touchpad. L'accelerazione del mouse è una casella a parte nella pagina Ottimizzazioni, Disattiva l'accelerazione del mouse (mira costante). Se un clic sembra in ritardo, Perché la mia mira sembra in ritardo e Perché i tasti rispondono in ritardo nei giochi ripercorrono l'intera catena.

Quali impostazioni di Windows cambiano qualcosa in gioco, chi aiuta ognuna e per chi non fa niente: Le impostazioni di Windows 11 che contano davvero per i giochi

w0a non cambia nessuna impostazione di Windows finché non glielo chiedi, e un tweak salva il valore precedente prima di scriverne uno nuovo. Avvisami

Questa pagina ti è stata utile?

Cosa mancava, o cosa non ha funzionato? Le leggiamo tutte, una per una.

Se questa pagina non ha risolto il problema, scrivici — dicci quale articolo hai letto, e sistemiamo l'articolo.