Беспроводная клавиатура Lenovo Mini N5901: переназначить оранжевую кнопку «Мой компьютер»

0

у меня есть Lenovo Mini Wireless Keyboard N5901 (a.k.a. № 57Y6336), который я использую с мой HTPC под управлением Windows 7.

Пульт ДУ имеет оранжевую кнопку в верхнем левом углу, которая по умолчанию при нажатии открывает окно «Мой компьютер» в Windows. Я хотел бы переназначить / перепрограммировать эту кнопку, чтобы она действовала как зеленая кнопка «Windows Media Center» вместо этого на пульте Windows Media Center (WMC); то есть откройте Windows Media Center, если он еще не открыт, или перейдите на домашнюю страницу WMC, если WMC уже открыт.

Я пробовал несколько утилит переназначения клавиатуры (как рекомендовано в других, более общих вопросах «Как переназначить клавиатуру?» Вопросы SuperUser.com), включая SharpKeys, Key Mapper и KeyTweak, но пока безуспешно. Ни одна из этих утилит не распознает оранжевую кнопку - все они распознают, что какая-то клавиша была нажата, но отображают значение для клавиши «неподдерживаемый» или что-то подобное.

Я смог использовать утилиту под названием Генератор кодов сканирования клавиатуры чтобы определить, что нажатие оранжевой кнопки имеет значение KeyData 16777217 (0x1000001) и значение «Виртуальный код» 182. (Другие «мультимедийные» кнопки на N5901 имеют то же значение KeyData, но разные значения Виртуального кода ).

Я не уверен в том, что в Windows это нажатие клавиши интерпретируется как команда открыть «Мой компьютер». Для этого устройства нет специального программного обеспечения / драйверов; Он работал из коробки с Windows 7, никакой специальной установки драйвера не требуется.

Есть ли способ сделать это?

Спасибо заранее за любые предложения!

Jon Schneider
источник
некоторые другие вопросы рекомендовали утилиту под названием Событие Призрак или же EventGhost чтобы помочь найти проблемные входы ... я думаю, что это может также сделать некоторую автоматизацию (а-ля AutoHotKey). SU поиск
quack quixote

Ответы:

1

вставьте это в скрипт autohotkey:

VKB6 :: run c: \ windows \ ehome \ ehshell.exe


источник
Спасибо за предложение! Это дает мне часть пути к тому, что я пытаюсь сделать. Сценарий, который вы предложили, выполняет следующие действия при нажатии «оранжевой кнопки»: (1) запускает WMC, если он еще не запущен; (2) переключается на WMC, если он уже запущен; (3) подавляет старое поведение запуска «Мой компьютер». ОДНАКО, это не заставляет WMC возвращаться в свое «главное меню», когда WMC уже запущен и является активным окном. Есть какие-нибудь указания по выполнению этого?
Jon Schneider
1

Примечание для тех, кто хочет быстро исправить это, для которого не требуется никакого стороннего программного обеспечения: открыто regedit, перейдите к HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\17

Изменить ShellExecute значение из текущего значения ( ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}, который идентифицирует «Мой компьютер») для любого приложения, которое вы хотите запустить (например, блокнот).

Имейте в виду, что это приведет к повторному сопоставлению клавиши «Мой компьютер» на любой клавиатуре (у моего Dell на работе есть такая, я сделал это для повторного сопоставления клавиши WMP, необходимой для открытия подсказки cmd).

Это работает с большинством стандартных клавиш быстрого запуска.

Jason Mykytiuk
источник
Милая! Я собираюсь дать этому попытку.
Jon Schneider
0

Я думаю, я понял это! Ответ от Кирка выше указал мне правильное направление.

Я использую это AutoHotKey сценарий:

VKB6::  ;On a press of the Lenovo N5901 orange button:
  if WinActive("Windows Media Center")  ;Is WMC the current active window?
    Send #!{Enter}  ;Act like a "green button" press (go to WMC main menu)
  else
    run c:\windows\ehome\ehshell.exe  ;Run/activate WMC
  return

Этот скрипт выполняет следующие действия при нажатии оранжевой кнопки на пульте дистанционного управления Lenovo N5901:

  1. Если Windows Media Center (WMC) не работает, запустите его.
  2. Если WMC запущен, но не является активным окном, активируйте его.
  3. Если WMC является активным окном, перейдите в главное меню WMC. (В качестве бонуса, второе нажатие оранжевой кнопки вернется туда, где вы были раньше в WMC.)
  4. Подавить поведение по умолчанию при вызове «Мой компьютер» нажатием оранжевой кнопки.

По сути, этот скрипт превращает оранжевую кнопку N5901 в «зеленую кнопку» стандартного пульта Windows Media Center.

Кредит идет на два источника для компонентов этого скрипта:

(1) Ответ Кирка, приведенный выше, за то, что в первую очередь указал мне на AutoHotKey, за код клавиши, фиксирующий нажатие оранжевой кнопки (VBK6), и средства для запуска / активации WMC (ehshell.exe).

(2) А пост на форумах AutoHotKey со скриптом AutoHotKey, демонстрирующим, как условно выбрать, какое действие выполнять в зависимости от того, является ли WMC текущим активным окном, и как имитировать нажатие клавиши удаленной «зеленой кнопки» пульта Windows Media Center (перейти в / из главного меню в WMC).

Jon Schneider
источник
Если кому-то интересно, я разместил свои полные впечатления от мультимедийного пульта N5901 здесь: blog.jonschneider.com/2010/07/...
Jon Schneider