Windows 10 не позволяет мне устанавливать приложения по умолчанию для расширений файлов

25

Отказ от ответственности: я знаю, как установить приложения по умолчанию и расширения файлов, я делал это много раз ранее.


Я только что установил Windows 10 Home на новую машину. Я пытаюсь связать свои файлы веб-разработки именно с Netbeans, но это может быть неактуально.

1. Расширения файлов недоступны

Во-первых, много общих расширений файлов, которые я использую, отсутствуют в списке расширений файлов - например, .phpрасширение. Я не знаю, если это обычно доступно в списке Windows. Мне, конечно, не пришлось вручную добавлять .phpрасширение на моем предыдущем компьютере с той же ОС.

Я решил это, добавив расширение файла вручную . Как я уже сказал, мне никогда не приходилось делать это раньше.


2. «Открыть с помощью» не сохраняет мой выбор приложения

Если щелкнуть правой кнопкой мыши файл и выбрать «Открыть с помощью» и включить «Всегда использовать это приложение для открытия файлов», он откроет файл в выбранной мной программе, но значок файла в Проводнике не изменится и не будет установлен это как программа по умолчанию.

Мне по-прежнему приходится выбирать «Открыть с помощью» каждый раз, когда я открываю файл с таким расширением.


3. Я не могу выбрать значения по умолчанию в приложении

Настройки> Приложения по умолчанию> Установить настройки по умолчанию для приложения

Моя программа (Netbeans) отсутствует в списке доступных приложений.


4. Я не могу выбрать значения по умолчанию по типу файла

Настройки> Приложения по умолчанию> Выбор приложений по умолчанию по типу файла

Если я выберу расширение файла и "[+] Выбрать по умолчанию" , когда я выберу приложение, оно будет зависать на секунду, как будто оно работает, тогда ничего не произойдет. Значение по умолчанию не будет установлено, и кнопка «[+] Выбрать значение по умолчанию» все еще там.

Примечание. Это работает для файлов любого типа с уже установленным приложением по умолчанию.


Другая информация

  • Я могу изменить расширение для распространенных файлов, таких как PNG, TXT.
  • Я не могу изменить расширения для таких файлов, как HTML, CSS, JS, PHP, SQL.
BadHorsie
источник
Исходя из ваших симптомов, в вашей установке ОС есть какая-то ошибка, и вы должны попытаться исправить ее. Однако можно попробовать еще один метод - изменить реестр. superuser.com/questions/266268/…
music2myear
@ music2myear Я только что выполнил переустановку Windows 10 «Start Fresh», и у меня все еще остается эта проблема после установки Netbeans. Я не могу установить программы по умолчанию для CSS, JS, PHP и т. Д.
BadHorsie
Как насчет TXT или .HTML или других файлов?
music2myear
@ music2myear TXT да, HTML нет. Я также проверил мой реестр, и это нормально.
BadHorsie

Ответы:

10

Windows 10 патч KB4467682

Устраняет проблему, из-за которой некоторые пользователи не могут устанавливать значения по умолчанию для программы Win32 для определенных комбинаций приложений и типов файлов с помощью команды «Открыть с помощью…» или «Настройки»> «Приложения»> «Приложения по умолчанию».

Я могу подтвердить, что этот недавний патч исправляет проблему. Просто обновите Windows 10 и она должна снова заработать

nixda
источник
1
Это должно быть самое точное время, которое я когда-либо обнаруживал в сети Stack Exchange! Это было выпущено вчера, и это давало мне покои некоторое время, но я только нашел время копаться в этом.
Арво Боуэн
Я знаю! Я не читал, когда был задан вопрос, и затем я прочитал этот ответ, я ожидал, что это будет обновление, которое произошло несколько месяцев / лет назад, поэтому у меня уже было бы это. Нет, всего несколько дней назад! Ужасно, что эта проблема вообще существовала. Я скучаю по Windows 7.
Уилл Эдигер
2
Ну, я опаздываю на вечеринку, эта проблема меня тоже беспокоит - но тем временем kb4467682 , видимо, был отозван. Похоже, что это вызвало голубые экраны на поверхности книги 2. И что теперь? Есть ли черный рынок для этих пакетов KB?
user1564286
11

Можно добавить новую ассоциацию файлов непосредственно в реестр, когда интерфейс Windows не работает для новых расширений:

  • Запустите regedit и нажмите HKEY_CLASSES_ROOT
  • Щелкните правой кнопкой мыши HKEY_CLASSES_ROOTи выберите, Newа затем Key.
  • Назовите ключ в соответствии с расширением файла, например .ext. (Если уже существует, пропустите этот шаг.)
  • Установите значение по умолчанию для ключа, который вы только что создали, на какое-то неиспользуемое уникальное имя, например MyFileType. (Если уже установлено, пропустите этот шаг.)
  • Повторите вышеупомянутое, чтобы создать другой новый ключ с вышеупомянутым именем, например MyFileType. (Если уже существует, пропустите этот шаг.)
  • Установите значение этого ключа по умолчанию для имени типа файла, например File Type name.
  • Щелкните правой кнопкой мыши MyFileTypeи создайте новый подраздел с именем DefaultIcon.
  • Установите значение по умолчанию нового ключа для C:\path-to\executable,0использования исполняемого файла, который должен обрабатывать запрос. Выберите другой исполняемый файл, если у вас нет ресурсов значков. ( 0это индекс значка в исполняемом файле.)
  • Создайте еще один новый ключ и назовите его shell.
  • Для каждого глагола / действия, которое вы хотите связать, создайте новый субключ с нужным именем. Некоторые глаголы запрограммированы и будут автоматически использовать локализованные имена, например open, editили print.
  • Для каждого глагола создайте дополнительный ключ commandи установите его значение по умолчанию для запускаемой программы. Также обязательно включите все необходимые параметры, добавив кавычки, если внутри есть пробелы, например "C:\My Path\My Program.exe" "%1". %1будет заменено фактическим именем файла, выбранным для этого действия.

Например, вот пример файла реестра для создания ассоциации между файлами .txt и EmEditor:

Редактор реестра Windows, версия 5.00

[HKEY_CLASSES_ROOT \ .txt]
@ = "Emeditor.txt"

[HKEY_CLASSES_ROOT \ emeditor.txt]
@ = "Текстовый документ"

[HKEY_CLASSES_ROOT \ emeditor.txt \ DefaultIcon]
@ = "% SystemRoot% \\ \\ SysWow64 imageres.dll, -102"

[HKEY_CLASSES_ROOT \ emeditor.txt \ оболочки]

[HKEY_CLASSES_ROOT \ emeditor.txt \ оболочки \ открыть]

[HKEY_CLASSES_ROOT \ emeditor.txt \ оболочки \ команда \ открыть]
@ = "\" C: \\ Program Files \\ EmEditor \\ EMEDITOR.EXE \ "\"% 1 \ ""

[HKEY_CLASSES_ROOT \ emeditor.txt \ оболочки \ печать]

[HKEY_CLASSES_ROOT \ emeditor.txt \ оболочки \ печать \ команда]
@ = "\" C: \\ Program Files \\ EmEditor \\ EMEDITOR.EXE \ "/ p \"% 1 \ ""
harrymc
источник
Это, большое спасибо. У меня было установлено две версии одного и того же программного обеспечения (потому что разные классы требуют разных версий), и я не мог изменить способ открытия некоторых расширений файлов по умолчанию. Ваше решение исправило это менее чем за 5 минут. Большое спасибо. :)
Jack_Hu
1

Мне, наконец, удалось решить эту проблему после нахождения неясного сообщения на форуме (теперь я потерял ссылку после переустановки Windows). По сообщениям, пользователь много раз переустанавливал Windows 10, чтобы выяснить проблему.

Эта проблема связана с установкой Windows 10 с локальной учетной записью, а не с привязкой учетной записи Microsoft и входом в систему. Я не уверен, является ли это ошибкой или каким-либо ограничением со стороны Microsoft.

По-видимому, как только вы начнете работать с локальной учетной записью и начнете пытаться изменить настройки приложения по умолчанию, все будет испорчено, и вы никогда не сможете это исправить. Исправление состоит в том, чтобы полностью переустановить Windows 10 и связать учетную запись Microsoft (что я не хотел делать в первую очередь).

Примечание. Переустановка с помощью параметра «Начать заново» в меню «Параметры Windows» не решит проблему, необходимо выполнить полную очистку и переустановить, а затем связать учетную запись Microsoft либо во время установки, либо сразу после нее, прежде чем пытаться изменить какие-либо настройки.

BadHorsie
источник
1
Я всегда использовал локальный аккаунт и никогда не сталкивался с подобными проблемами. Процедура, которую я изложил, работает для меня и для многих других людей. Хорошо, что вы решили проблему, хотя решение повторной повторной установки слишком сложное. Я думаю, что разница с последней установившейся установкой заключается в том, что вы выполняете какое-то действие во время установки или какой-то продукт, который вы устанавливаете.
Harrymc
@harrymc Я понимаю, что вы говорите, и я применил методичный подход к устранению проблемы. Я сделал каждую установку точно таким же образом, с теми же параметрами. Я на самом деле пытался переустановить дважды с локальной учетной записью, и у меня была одна и та же проблема каждый раз. Я также установил только одну программу, чтобы попытаться изменить тип файла перед установкой чего-либо еще. Я чувствую, что редактирование реестра каждый раз, когда вы хотите изменить ассоциации файлов, является худшим решением и не решает проблему по-настоящему.
BadHorsie
Новый интерфейс ассоциации файлов должен был облегчить редактирование. Но, как это часто бывает с Microsoft, некоторые вещи усложнились. Мы, пользователи, должны найти обходные пути, когда это произойдет.
harrymc
1
Я могу это подтвердить. Со мной тоже случилось и я решил с помощью переустановки и теперь нелокальной учетной записи. Я также сказал бы, что у меня не было этой проблемы до Windows 10 версии 1809, так как мой реестр уже показывает ассоциации с этой конкретной программой, сделанной ранее
nixda
Я использую учетную запись Microsoft, и у меня тоже есть эта проблема ...
Майк
-1

Мое решение было вдохновлено подходом @ harrymc, но, возможно, более прямо к сути.

  1. Кнопка «Пуск» -> введите regedit.exe (Windows 10, похоже, не принимает просто regedit )
  2. В разделе HKEY_CLASSES_ROOT найдите расширение файла. Для этого элемента реестра посмотрите в OpenWithProgids \, где будет существовать бесценный ключ, который указывает тип файла этого расширения.
  3. По-прежнему в разделе HKEY_CLASSES_ROOT, прокрутите вниз до этого типа файла, который также существует как элемент реестра. В командной оболочке \ open \ command \ ключ "(по умолчанию)" показывает, какой исполняемый файл откроет файл. Измените значение, чтобы использовать предпочтительный исполняемый файл, включая любые требуемые параметры, но оставьте «% 1» без изменений, чтобы обозначить рассматриваемый аргумент файла.
  4. Повторите этот косвенный поиск и замену в разделе HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes. Я понятия не имею, какие настройки преобладают, возможно, некоторые эксперименты в порядке.
  5. Перезагрузите Windows.
  6. Дополнительное преимущество предоставляется бесплатно: в File Explorer все файлы с этим расширением теперь будут отображать значок недавно установленного предпочтительного исполняемого файла для открытия этих файлов.
user1564286
источник
Пожалуйста, не повторяйте еще один ответ ... Кроме того, номер 5. не нужен для каталога HKEY_CLASSES_ROOT реестра. Кроме того, HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes просто дублируется при запуске Windows из каталога CLASSES_ROOT (таким образом, его имя).
Jack_Hu