Ponowne mapowanie klawisza «PowerOff» na klawiaturze laptopa Asus w systemie Windows 10 64 bity?

8

Co próbuję osiągnąć:

Aby ponownie mapować przycisk zasilania laptopa, który jest absurdalnie umieszczony jako klawisz na klawiaturze.

Kontekst:

Niedawno kupiłem ulepszoną wersję laptopa ASUS VivoBook Pro N552VW. To świetna maszyna o świetnych specyfikacjach. Podoba mi się każdy szczegół w nim, z wyjątkiem jednej rzeczy, której po prostu nie mogę połknąć, ani też nie rozumiem, dlaczego na Ziemi istnieje.

Geniusz projektowania produktu zdecydował, że przycisk zasilania do włączania i wyłączania komputera powinien znajdować się między klawiszami klawiatury. Nawet mądrzejszy, geniusz zdecydował, że należy go umieścić tam, gdzie zwykle znajduje się dedykowany klawisz „End”, jak widać na poniższym obrazku:

wprowadź opis zdjęcia tutaj

Łagodzenie problemu:

Chociaż ten projekt jest oczywiście podatny na błędy, tj. Zawsze istnieje ryzyko przypadkowego naciśnięcia klawisza zasilania, a następnie uśpienia laptopa w trakcie sesji roboczej. Łatwo to jednak rozwiązać, przechodząc do ustawień zasilania systemu Windows i nie definiując, co się stanie po naciśnięciu przycisków zasilania. Zobacz zdjęcie poniżej:

wprowadź opis zdjęcia tutaj

Co pozostaje do zrobienia:

Jednak tak naprawdę chciałbym zrobić to zmapować taki klucz, aby zachowywał się tak, jakby był ponownie dedykowanym klawiszem End. Próbowałem wielu programów do mapowania kluczy, ale żadne nie działało. Wiem, że klucze zasilania są często mapowane na proces zasilania systemu BIOS na raczej niskim poziomie, więc miałem się poddać.

To wtedy znalazłem to pytanie w AskUbuntu Stackoverflow: /ubuntu/580902/how-to-change-mapping-for-the-poweroff-key-on-keyboard

Tam podano rozwiązanie dla systemu operacyjnego Ubuntu. Dało mi to z powrotem nadzieję, że zrobienie tego samego pod oknami może być możliwe. Dlatego moje pytanie tutaj: w jaki sposób mogę poprawnie odwzorować głupiutki przycisk zasilania Asusa, aby zachowywał się jak klawisz „End”?

Moim preferowanym rozwiązaniem byłoby robienie tego za pośrednictwem rejestru Windows. Tylko jeśli nie jest to w ogóle możliwe, chciałbym przetestować opcję korzystania z zewnętrznych programów do ponownego mapowania, które muszą być ładowane przez cały czas.

Co dokładnie wypróbowałem:

W rzeczywistości próbowałem zarówno zmiany rejestru, jak i korzystania z zewnętrznego oprogramowania. Żadne wolne oprogramowanie, które mogłem znaleźć, nie pozwoliło mi odpowiednio zmapować klawisza zasilania.

Zmieniając rejestr, najlepiej mogłem dowiedzieć się, aby klucz NumLock stał się kluczem End (wtedy NumLock byłby dostępny przez Ctrl + Alt + PauseBreak):

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Keyboard Layout

„Scancode Map” = 00,00,00,00,00,00,00,00,03,00,00,00,4f, e0,45,00,45,00,46, e0,00,00,00 , 00

Nie trzeba dodawać, że jest to dość brudne rozwiązanie, ponieważ powoduje więcej bałaganu.

MAnd
źródło
1
Przepraszam, nie mogę pomóc, poza tym, że popieram twoją opinię, że jest to popsuty projekt klawiatury.
Paul,
Użyj klawiszy SharpKeys, aby sprawdzić, czy klawisz zasilania generuje kod skanowania ( samouczek ). Jeśli nie ma, nie można go zmapować, wyłącza się tylko tak, jak Ty. Jedyne, co możesz zrobić, to zresetować go, aby wyłączyć, a następnie uwięzić to zdarzenie, ale to więcej kłopotów niż jest warte. Uwaga: Czasami długie naciśnięcie tego przycisku jest jedynym sposobem na wyłączenie zawieszonego komputera w sposób częściowo uporządkowany.
harrymc
1
nie widziałeś komputera Mac lub innego laptopa z klawiszem zasilania na klawiaturze? Stare komputery Mac mają nawet klawisz wysuwania DVD na klawiaturze. I nie, nie można ponownie przypisać klucza, jeśli jest on przetwarzany przez oprogramowanie układowe klawiatury i nie generuje żadnego skancodu, tak jak zwykle nie można ponownie przypisać klawisza Fn w systemie Windows. Duplikat: Czy mogę ponownie przypisać klawisz zasilania do klawisza End w systemie Windows 10?
phuclv
duplikat Czy można ponownie przypisać przycisk zasilania komputera lub laptopa? , niefortunne, że nie można go zamknąć z powodu nagrody
phuclv

Odpowiedzi:

5

Użyj klawiszy SharpKeys, aby sprawdzić, czy klawisz zasilania generuje kod skanowania na klawiaturze. Jeśli tak, to SharpKeys może zmienić mapowanie klucza w rejestrze, który będzie działał dla wszystkich programów.
Zobacz samouczek w artykule Mapowanie dowolnego klucza na dowolny klucz w systemie Windows 10, 8, 7 lub Vista .

W przypadku, gdy klawisz zasilania nie generuje kodu skanowania w systemie Windows, nie można go zmapować, a jedynie wyłączyć tak jak ty. Nawet jeśli Linux może go odwzorować, ponieważ zapewnia lepszą kontrolę nad klawiaturą, tak nie jest w przypadku Windows.

W takim przypadku możesz jedynie ponownie aktywować klawisz zasilania i zresetować go, aby ponownie wyłączyć, a następnie uwięzić i anulować to zdarzenie, przypisując je do innego klucza, takiego jak Endklucz. Można to zrobić za pomocą AutoHotkey , ale może to być większy problem niż jest to warte. Jeśli jesteś zainteresowany, mogę rozwinąć moją odpowiedź, aby pokazać, jak to się robi.

Zwracam uwagę, że czasami użycie przycisku Zasilanie jest jedynym sposobem na wyłączenie zawieszonego komputera w częściowo uporządkowany sposób.

harrymc
źródło
Jeśli odwołujesz się do skryptu zapobiegania zamykaniu w AHK: OnMessage , zauważ, że „zgłaszane jest, że NIE działa ono w systemie Windows Vista i nowszych” . W przeciwnym razie chciałbym zobaczyć twoją magię.
guest-vm
@guest: Istnieje kilka takich skryptów do znalezienia. Uważam, że program API może anulować zamknięcie, bez udziału magii, więc AHK również powinien to zrobić. Ale, jak powiedziałem, może to nie być warte kłopotu z nakierowaniem plakatu na te linki i poproszeniem go o poświęcenie czasu na ich sprawdzenie, ponieważ nie można zagwarantować, że te rozwiązania będą działać we wszystkich przypadkach.
harrymc