Иногда приходится сталкиваться с такой ситуацией, когда все ярлыки на рабочем столе перестали запускаться. Также бывает, что не запускаются не ярлыки, а сами программы — файлы с расширением EXE — опять же, не отдельные, а все файлы этого типа, либо все они начинают открываться в какой-либо одной программе, например, Блокноте.
Причины могут быть разными, но часто проблема бывает вызвана сбоем в ассоциациях файлов Windows 11, Windows 10 или предыдущих версиях ОС, которые легко исправить. Ниже описаны способы исправления ассоциаций файлов EXE и LNK, в отдельной инструкции вы можете найти дополнительный способ восстановить ассоциации файлов Windows 10 (подойдёт и для Windows 11).
Почему ярлыки не открываются или открываются одной программой
Рассматриваемая проблема может возникать по разным причинам — иногда виноват сам пользователь, неаккуратно выставив открытие ярлыков или исполняемых файлов через определенную программу. В этом случае, при попытке запустить ярлык программы или exe файл у вас может открываться какая-то не предназначенная для этого программа — браузер, блокнот, архиватор или что-то еще. Также это может быть побочный эффект от работы вредоносного программного обеспечения.
Основной признак того, что причина проблемы с запуском ярлыков или программ именно в неверных ассоциациях — открытие одной и той же программы, независимо от того, какой файл открывается.
Ещё один возможный симптом — одно и то же сообщение об ошибке при открытии разных файлов EXE и LNK, однако в этом случае нельзя быть уверенным на 100%, что причина именно в нарушенных ассоциациях файлов, возможно, дело в чём-то другом и имеет смысл поискать решения проблемы по тексту сообщения об ошибке.
Как исправить проблему
В зависимости от конкретной ситуации, решения могут быть разными. Чаще всего срабатывает один из следующих подходов:
- Использование точек восстановления системы на дату, когда проблема не наблюдалась. Если вы не можете открыть интерфейс для доступа к точкам восстановления, можно попробовать использовать диспетчер задач (Ctrl+Alt+Delete), после чего использовать меню Файл — Новая задача — rstrui.exe Ещё один вариант — использование точек восстановления с загрузочной флешки (описано в инструкции по предыдущей ссылке), либо с WinPE.
- Использование сторонних утилит для восстановления ассоциаций файлов, например, FixExec
- Если точки восстановления отсутствуют, вы можете создать reg-файл (в том числе на другом компьютере) для восстановления ассоциаций нужного типа файла, после чего объединить его с реестром (правый клик по файлу — объединить) и перезагрузить компьютер. Код файла для восстановления ассоциаций EXE:
[HKEY_CLASSES_ROOT\exefile\shell\runasuser\command] "DelegateExecute"="{ea72d00e-4960-42fa-ba92-7792a7944c1d}" [HKEY_CLASSES_ROOT\exefile\shellex] [HKEY_CLASSES_ROOT\exefile\shellex\ContextMenuHandlers] @="Compatibility" [HKEY_CLASSES_ROOT\exefile\shellex\ContextMenuHandlers\Compatibility] @="{1d27f844-3a1f-4410-85ac-14651078412d}" [HKEY_CLASSES_ROOT\exefile\shellex\DropHandler] @="{86C86720-42A0-1069-A2E8-08002B30309D}" [HKEY_CLASSES_ROOT\exefile\shellex\PropertySheetHandlers] [HKEY_CLASSES_ROOT\exefile\shellex\PropertySheetHandlers\ShimLayer Property Page] @="{513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}" [HKEY_CLASSES_ROOT\exefile\shellex\PropertySheetHandlers\{B41DB860-64E4-11D2-9906-E49FADC173CA}] @="" [HKEY_CLASSES_ROOT\exefile\shellex\PropertySheetHandlers\{B41DB860-8EE4-11D2-9906-E49FADC173CA}] @=""
- Код для LNK (ярлыков):
[HKEY_CLASSES_ROOT\.LNK] @="lnkfile" [HKEY_CLASSES_ROOT\.LNK\ShellEx\{000214EE-0000-0000-C000-000000000046}] @="{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT\.LNK\ShellEx\{000214F9-0000-0000-C000-000000000046}] @="{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT\.LNK\ShellEx\{00021500-0000-0000-C000-000000000046}] @="{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT\.LNK\ShellEx\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}] @="{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT\.LNK\ShellNew] "Handler"="{ceefea1b-3e29-4ef1-b34c-fec79c4f70af}" "IconPath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ 74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\ 00,68,00,65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,\ 31,00,36,00,37,00,36,00,39,00,00,00 "ItemName"="@shell32.dll,-30397" "MenuText"="@shell32.dll,-30318" "NullFile"="" [HKEY_CLASSES_ROOT\.LNK\ShellNew\Config] "DontRename"="" [HKEY_CLASSES_ROOT\lnkfile] @="Shortcut" "EditFlags"=dword:00000001 "FriendlyTypeName"="@shell32.dll,-4153" "IsShortcut"="" "NeverShowExt"="" [HKEY_CLASSES_ROOT\lnkfile\CLSID] @="{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\Compatibility] @="{1d27f844-3a1f-4410-85ac-14651078412d}" [HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\OpenContainingFolderMenu] @="{37ea3a21-7493-4208-a011-7f9ea79ce9f5}" [HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\{00021401-0000-0000-C000-000000000046}] @="" [HKEY_CLASSES_ROOT\lnkfile\shellex\DropHandler] @="{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT\lnkfile\shellex\IconHandler] @="{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT\lnkfile\shellex\PropertySheetHandlers\ShimLayer Property Page] @="{513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}" [-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.LNK\UserChoice] [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.LNK\OpenWithProgids] "lnkfile"=hex(0):
В большинстве случаев, если проблема запуска LNK и/или EXE файлов вызвана именно ассоциациями файлов, один из методов помогает решить проблему. Если же она сохраняется, опишите в деталях ситуацию, используя комментарии ниже — я постараюсь помочь.