<
  • Главная
Статьи

Вся правда про меню Win + X в Windows 8

  1. Передісторія
  2. Час "Х" для меню Win + X
  3. Так як же додати власний ярлик в меню Win + X
  4. Створення нових груп програм в меню Win + X
  5. Кілька слів про імена пунктів меню Win + X
  6. Перейменування пункту меню Win + X з використанням файлу Desktop.ini
  7. Перейменування пункту меню Win + X з використанням коментаря ярлика
  8. вироблення овчинки

Однією з найбільш непоказних, але надзвичайно корисних функцій Windows 8 Consumer Preview (за відсутності щось меню Пуск, так) є меню [k] Win [/ k] + [k] X [/ k]. Ім'я своє воно отримало завдяки поєднанню клавіш, якими воно викликається, і ще відомо під сценічним псевдонімом "Power User Menu". Незважаючи на амбітне позиціонування, ні "повер", ні будь-якої ще користувач не зможе в це меню нічого додати. Система вперто ігнорує призначені для користувача ярлики. Давайте розберемося, звідки ростуть корені такої кричущої несправедливості, і спробуємо змінити ситуацію.

Передісторія

Встановивши Windows 8, я відразу виявив горезвісне меню, застосувавши свої вже добре відомі читачеві прийоми пошуку секретів Windows . І відразу ж з'ясував, що в цьому меню неможливо додати свої ярлики.

показував начебто очевидні речі - процес Explorer.exe мирно шерстить папку% LOCALAPPDATA% \ Microsoft \ Windows \ WinX, перечитуючи папку за папкою на предмет файлів з розширенням * .lnk. Я пробував підкласти туди свій ярлик, і Провідник, весело шурхотом не зовсім свіжим "ВД" 4хлетней давності, заковтнула наживку. Але натиснувши [k] Win [/ k] + [k] X [/ k], в списку програм я свого ярлика не виявив. При цьому Procmon не показував нічого специфічного або незвичайного.

Через брак належної кваліфікації і банально вільного часу я тимчасово залишив всякі спроби знайти спільну мову з цим меню, і покинув сируватий, що кишить потворними квадратними рибами середу бета-версії Windows для планшетів.

Час "Х" для меню Win + X

4го квітня широко відомий в певних колах блогер і хакер Рафаель Рівера зірвав покриви таємниці з принципів побудови злощасного меню. У своєму блозі Рафаель:

Пункти меню є звичайними ярлики (.lnk-файли), що знаходяться в папках виду Group <Цифра>. Ви не зможете додати сюди власні ярлики, тому що система відображає тільки "схвалені" ярлики. Чому? Та тому що Microsoft всіляко перешкоджає появі подібності меню "Пуск", яке так ретельно віддалялося з Windows 8, або використанню цього меню в якості аналога панелі Quick Launch з тих самих міркувань.

"Схвалений" ярлик, який отримав це прізвисько з легкої руки Рафаеля, - це звичайний lnk-файл, який містить в собі позначку в вигляді 4-хбайтного хешу, отриманого за кількома строковим значенням:

1. Повний шлях до файлу, на який посилається ярлик (наприклад, з: \ games \ quake3 \ qauke3.exe)

2. Аргументи запуску програми (в темі попереднього прикладу - + connect q3.playground.ru)

3. Третій рядок - це жорстко прошитий текст, буквальне вміст якого - "Do not prehash links. This should only be done by the user."

Поєднуючи ці три рядки воєдино, Windows призводить їх до нижнього регістра і вважає за ним хеш за допомогою функції. Цей хеш записується безпосередньо в сам .lnk-файл.

Більшість з нас сприймає ці файли як "звичайні ярлички", але на ділі - це складні об'єкти, описані в MSDN як. Ці об'єкти дозволяють зберігати масу додаткової інформації. Зокрема, вони підтримують зберігання структур даних типу "Ключ - значення", відомих як.

Саме тут і зберігається хеш ярлика:

DEFINE_PROPERTYKEY (PKEY_WINX_HASH, 0xFB8D2D7B, 0x90D1, 0x4E34, 0xBF, 0? 60, 0x6E, 0xAC, 0? 09, 0? 92, 0x2B, 0xBF, 0? 02);

Маючи в своєму розпорядженні цією інформацією, можна формалізувати наступний алгоритм побудови меню [k] Win [/ k] + [k] X [/ k]:

  1. Провідник послідовно перебирає папки% LOCALAPPDATA% \ Microsoft \ Windows \ WinX \ Group1-GroupN
  2. В одній папці він знаходить файли .lnk
  3. Якщо файли знайдені, для кожного файлу вважається хеш.
  4. Зчитується значення хеша з самого lnk-файлу і порівнюється з підрахованими в п.3. Якщо вони збігаються - ярлик вважається схваленим і відображається в меню [k] Win [/ k] + [k] X [/ k].

Так як же додати власний ярлик в меню Win + X

Цілком очевидно, що потрібно

  1. створити ярлик або взяти готовий з робочого столу, наприклад;
  2. помістити його в папку% LOCALAPPDATA% \ Microsoft \ Windows \ WinX \ Group1 (або створити свою папку / папки, наприклад Group4);
  3. записати хеш в цей ярлик.

Ось тільки останнім засобами Windows виконати не можна.

Рафаель для цих цілей реалізував консольную утиліту (), яка записує хеш в .lnk файл. Користуватися їй так:

[Code] hashlnk.exe "повний \ шлях \ к файлу.lnk" [/ code]

Після цього слід перезапустити Провідник . вуаля:

Увага! Під Windows 8 x64 помічений глюк - іноді потрібно застосувати hashlnk двічі, щоб доданий вами ярлик почав відображатися в меню [k] Win [/ k] + [k] X [/ k]. Просто запустіть утиліту два рази.

Створення нових груп програм в меню Win + X

Це дуже просто. За замовчуванням папка% LOCALAPPDATA% \ Microsoft \ Windows \ WinX містить три піддиректорії - Group1, Group2 і Group3. Ці папки, як ви вже здогадалися, і відображаються як групи в меню [k] Win [/ k] + [k] X [/ k]. Створіть папку Group4, щоб додати в нього нову групу. Створюючи папки за принципом Group <Максимальна цифра + 1>, ви можете додати стільки груп, скільки вам потрібно. Після цього в них можна розміщувати ярлики, не забуваючи застосувати hashlink.

Кілька слів про імена пунктів меню Win + X

Уважний читач напевно вже зазначив, що існує деяка різниця у відображенні програм в меню [k] Win [/ k] + [k] X [/ k] і в фізичному назві файлів. На зображенні вище ми бачимо, що друга група містить ярлики "Run", "Search" і т.п., але фізично файли мають зовсім інші імена!

Мені відомо два способи завдання імені пункту меню [k] Win [/ k] + [k] X [/ k].

Перейменування пункту меню Win + X з використанням файлу Desktop.ini

Це - класика жанру. Створимо в меню [k] Win [/ k] + [k] X [/ k] нову групу, і помістимо туди мій улюблений Far Manager.

Тепер створимо в цій же папці файл Desktop.ini з таким вмістом:

[Code] [LocalizedFileNames]
Far Manager 2 x64.lnk = Файловий менеджер [/ code]

Тобто в секції [LocalizedFileNames] потрібно прописати кожен ярлик у вигляді Ім'я файла.lnk = Коротке ім'я.

Увага! Щоб файл desktop.ini вступив в дію, потрібно встановити папці Group4 атрибут "Read only". Причому, засобами Провідника Windows 8 у вас цього зробити не вийде. Прапорець в "Властивості папки" відпрацьовує некоректно, ви можете в цьому переконатися самі. Тому я встановив горезвісний атрибут з Far Manager.

Тому я встановив горезвісний атрибут з Far Manager

Після цього слід знову перезапустити Провідник . результат:

результат:

Подібним чином ви можете перейменувати будь-який з присутніх ярликів в меню [k] Win [/ k] + [k] X [/ k].

Перейменування пункту меню Win + X з використанням коментаря ярлика

Цей спосіб передбачає, що в файлі Desktop.ini немає запису для поточного ярлика, тому що desktop.ini має пріоритет над коментарем ярлика. Тому в демонстраційних цілях я видалю створений раніше desktop.ini, і продовжу експерименти над ярликом Far Manager.

Якщо у ярлика, що фігурує в меню [k] Win [/ k] + [k] X [/ k], присутній коментар (і для нього немає запису в desktop.ini, я підкреслюю це), то в меню з'явиться не ім'я ярлика , а саме його коментар.

ini, я підкреслюю це), то в меню з'явиться не ім'я ярлика , а саме його коментар

Перезапустивши Провідник, отримуємо наступний результат:

Перезапустивши Провідник, отримуємо наступний результат:

вироблення овчинки

"Стільки метушні через якогось ярлика! Так овчинка вичинки не варта!" - обуриться читач, і буде правий. Я теж вважав таку кількість рухів тіла невиправданим, і тому створив програму, що дозволяє управляти складом ярликів меню [k] Win [/ k] + [k] X [/ k].

Це Win + X Menu Editor:

Це Win + X Menu Editor:

програма дозволяє

  • Додавати і видаляти групи
  • Додавати і видаляти ярлики
  • Сортувати порядок відображення ярликів
  • Можна повернути склад меню за замовчуванням.

З цією програмою ви можете налаштувати меню Win + X просто і швидко. Програма використовує утиліту hashlnk Рафаеля Рівери для генерації хеша ярликів.

Завантажити Win + X Menu Editor можна з або c Winaero (Сторінка англійською мовою).

Що ж, корпорація Майкрософт активно бореться з усім, що функціонально схоже з класичним меню "Пуск" і намагається мінімізувати можливості тонкої (та й "товстої", в общем-то, теж) настройки прийдешньої версії Windows. Подібно Windows Phone, в Windows 8 присутні механізми, що запобігають несанкціоновані модифікації системних файлів і навіть додавання ярликів, здатні загнати в ступор навіть бувалого любителя твиков і хаков.

Мені б хотілося почути думку читача щодо політики настройки системи. Чи вважаєте ви реалізацію подібних обмежень правильним кроком з боку Майкрософт? І ще, чи користуєтеся ви меню [k] Win [/ k] + [k] X [/ k]?

Чому?
PKEY_WINX_HASH, 0xFB8D2D7B, 0x90D1, 0x4E34, 0xBF, 0?
X6E, 0xAC, 0?
X2B, 0xBF, 0?
Чи вважаєте ви реалізацію подібних обмежень правильним кроком з боку Майкрософт?
І ще, чи користуєтеся ви меню [k] Win [/ k] + [k] X [/ k]?


Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью