Num Lock отказывается оставаться на

Прежде чем продолжить, позвольте мне сказать, что это не вопрос отключения Num Lock после загрузки. Я уже исправил это. Моя проблема в том, что Num Lock отказывается оставаться, пока я использую свой ноутбук.

Сценарий: я захожу на свой ноутбук Acer Aspire F5-572-57T8 и мне предоставляется мой рабочий стол. Num Lock включен и все нормально. Некоторое время (вероятно, 5-10 минут, не проверялось ли это каждый раз на один и тот же интервал) после того, как я прекратил использовать цифровую клавиатуру, однако Num Lock отключается сам. Я пытаюсь набрать число, замечаю, что Num Lock выключен, и нажимаю кнопку, перезапуская цикл.

У кого-нибудь есть какие-либо подсказки, что вызывает это, и есть ли способ остановить это?

2 ответа

Решение

ВОЗМОЖНОЕ РЕШЕНИЕ

Я получил эту идею и первоначальную логику VBS от TechNet - Scripting Guy и просто сделал несколько небольших корректировок логики VBS и превратил ее в динамически создаваемый пакетный скрипт, работающий в цикле. Он запускается по мере необходимости и может быть легко и по необходимости убит без необходимости установки, если у вас уже есть Microsoft Office Word на вашем компьютере (я уверен, что есть способ разместить компоненты Office на вашем ПК без необходимости хотя лицензионное программное обеспечение установлено).

Просто сохраните приведенную ниже логику пакетного сценария в текстовом файле на рабочем столе и т. Д. И назовите ее <something>.cmd, а затем просто дважды щелкните по нему, чтобы запустить. Наблюдайте, как индикатор Num Lock на клавиатуре переключается каждые X секунд, пока вы говорите, что он работает (я установил его на 5 в примере сценария).

Просто сверните окно командной строки, когда оно запущено, и просто закройте окно командной строки с "X", когда вы будете готовы прекратить работу, если ваш ПК больше не будет включать Num Lock, если он случайно выключен.

Динамическая VBS Batch Script Logic

@ECHO OFF
SET TempVBSFile=%tmp%\~tmpSendKeysTemp.vbs
SET PauseSeconds=5

:VBSDynamicBuildLoop
IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO Set objWord = CreateObject("Word.Application")              >>"%TempVBSFile%"
ECHO Set WshShell = WScript.CreateObject("WScript.Shell")        >>"%TempVBSFile%"
ECHO Wscript.Sleep %PauseSeconds%000                             >>"%TempVBSFile%"
ECHO.                                                            >>"%TempVBSFile%"
ECHO If objWord.NumLock = 0 Then                                 >>"%TempVBSFile%"
ECHO    WshShell.SendKeys "{NUMLOCK}"                            >>"%TempVBSFile%"
ECHO End If                                                      >>"%TempVBSFile%"
ECHO.                                                            >>"%TempVBSFile%"
ECHO objWord.Quit                                                >>"%TempVBSFile%"

CSCRIPT //nologo "%TempVBSFile%"
GOTO VBSDynamicBuildLoop

У меня была такая же проблема, я решил ее, выбрав "Диспетчер устройств"> "Устройства с интерфейсом пользователя"> "Устройство ввода USB" У меня было три из этих записей USB, для каждого из которых я дважды щелкнул, перешел на последнюю вкладку и отключил возможность выключения устройства. Затем нажал ОК. Если это не разбудит вашу клавиатуру, снова включите флажок, ОК, затем перейдите к следующему USB-устройству. Для меня это был последний... Подтверждение немедленно включило NUMLOCK моей клавиатуры.

Это может быть проблемой, характерной для клавиатур под маркой Microsoft, кстати.

Другие вопросы по тегам