После вирусного заражения или некорректной модификации реестра в Windows пользователь может столкнуться с проблемой: исполняемые .exe файлы, установочные msi или файлы скриптов powershell/cmd/vbs перестают запускаться. При попытке открыть файл из Проводника ничего не происходит, появляется окно с предложением выбрать программу или .exe файлы открываются в одной программе (например, notepad.exe или paint.exe). В этой статье рассмотрим, как восстановить запуск .exe файлов в Windows.
Восстановление ассоциаций EXE файлов в Windows
Если при запуске любого .exe файла в Windows появляется окно с вопросом «Каким образом вы хотите открыть этот файл?»
Или просто не удается открыть .exe
Либо ошибка «Windows не удается получить доступ к указанному устройству, пути или файлу.», чаще всего это связано с вирусом или изменениями в реестре.
Чтобы восстановить ассоциации для исполняемых .exe файлов, выполните следующие шаги:
1. Создайте текстовый файл на рабочем столе.
2. Скопируйте в файл строку:
start cmd
3. Переименуйте файл в run.bat и запустите его от имени администратора.
4. В открывшейся cmd выполните команды:
reg delete HKEY_CLASSES_ROOT\.exe /ve /f
reg add HKEY_CLASSES_ROOT\.exe /ve /d exefile /f
reg delete HKEY_CLASSES_ROOT\exefile /ve /f
reg add HKEY_CLASSES_ROOT\exefile /ve /d Application /f
reg delete HKEY_CLASSES_ROOT\exefile\shell\open\command /ve /f
reg add HKEY_CLASSES_ROOT\exefile\shell\open\command /f /ve /d "\"%1\" %*"
assoc .exe=exefile
Эти команды сбросят ассоциации для .exe файлов на стандартные. Перезагрузите компьютер.
Если .bat и .cmd файлы также не запускаются, вам потребуется редактировать реестр вручную в безопасном режиме:
1. Загрузите компьютер в безопасном режиме через WinRE (повторно прервав загрузку Windows три раза).
2. Находясь в Windows Recovery Environment (WinRE или Среда восстановления Windows) выберите Поиск и устранение неисправностей > Дополнительные параметры > Параметры загрузки > Перезагрузить, после перезагрузки выберите 4 пункт — нажав F4.
3. В реестре regedit.exe откройте ветку HKEY_CLASSES_ROOT\.exe и измените значение Default на exefile.
4. Далее, перейдите в ветку HKEY_CLASSES_ROOT\exefile\shell\open\command и установите значение Default на «%1» %*.
5. Повторите аналогичную процедуру для HKCR\exefile\shell\open и HKCR\exefile.
После этого перезагрузите компьютер в обычном режиме, и File Explorer должен использовать стандартные ассоциации для .exe файлов. Выполните также команду:
assoc .exe=exefile
Дополнительно проверьте целостность системных файлов:
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
Убедитесь, что ваш антивирус не блокирует запуск .exe файлов.
Не запускаются исполняемые .exe файлы из сетевой папки
Если .exe файлы запускаются локально, но не открываются из сетевой папки, возможные причины:
1. Проверьте NTFS права на папку/файл. Отсутствие Read/Execute прав вызовет ошибку:
Разрешение на доступ к \\sharepath\file.exe отсутствует. Обратитесь к сетевому администратору для получения доступа.
2. Измените NTFS разрешения.
3. Запустите файл в режиме совместимости: в свойствах .exe выберите Совместимость и установите режим совместимости с Windows 8.
4. Если сетевая папка размещена на устройстве, поддерживающем только SMB v1 (например, NAS или Windows Server 2003), Об этом могут говорить ошибки:
5. Необходимо проверить включен ли SMBv2 или SMBv3:
Get-SmbServerConfiguration | Select EnableSMB2Protocol
6. Чтобы включить SMBv2 на файловом сервере:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Для Linux-серверов с Samba отключите SMB1 в конфигурации smb.conf, добавив:
min protocol = SMB2
Если ваш файловый сервер работает на устаревшем SMBv1, для доступа к такому хранилищу из современных версий Windows 10 придется включать на компьютерах пользователей клиент доступа SMB 1.0 — Клиент SMB 1.0/CIFS (что настоятельно не рекомендуется).
Лучше перенести данные на Windows Server 2012 R2 или выше, чтобы обеспечить корректную работу с SMBv2 или SMBv3.