В этой статье мы рассмотрим, как ассоциировать разные расширения (типы) файлов с программами в Windows 10/11 и Windows Server 2022/2019/2016/2012R2. В качестве примера мы покажем, как в Windows назначать программу по-умолчанию для открытия *.pdf файлов, импортировать эти настройки в xml файл и распространить полученный файл с параметрами сопоставления файлов на другие компьютеры вручную или с помощью групповых политик.
Главное отличие Windows 10 и 11 от предыдущих версий ОС — теперь нельзя назначить файловые ассоциации через реестр или функционал Group Policy Preferences Open With. Зато появилась новая возможность выгрузить текущие настройки файловых ассоциаций (FTA, File Type Assotiations) с “эталонного” компьютера в xml файл и использовать данный файл для изменения настроек сопоставления расширений файлов на других компьютерах. Также вы можете экспортировать файл с настройками ассоциаций файлов в стандартный образ системы, который разворачивается на клиентах в вашей сети (вручную, через WDS или SCCM).
Содержание:
- Задать программу по умолчанию для открытия типа файлов в Windows 10/11
- Изменить ассоциации программ с типами файлами в Windows из командной строки
- Экспорт, импорт и перенос настроек ассоциаций файлов Windows через XML файл
- Настройка ассоциаций файлов в Windows с помощью GPO
- Изменить файловые ассоциации через реестр Windows
- Сброс всех ассоциаций файлов в Windows
Задать программу по умолчанию для открытия типа файлов в Windows 10/11
Предположим, вы хотите использовать Adobe Reader DC для открытия *.pdf файлов на всех компьютерах домена. Т.е. вы хотите создать ассоциацию этого расширения файлов с приложением. Для этого нам понадобится эталонный компьютер с Windows 10 или 11 (в этом примере используется актуальный билд 22H1) и установленным Acrobat Reader DC.
Обратите внимание, что в Windows 10 и 11 теперь по умолчанию установлен браузер Microsoft Edge, который используется как программа по-умолчанию для просмотра PDF файлов.
Чтобы вручную создать сопоставление определенного типа файла с программой, откройте панель Settings -> Default Apps (для быстрого перехода используйте команду быстрого доступа Settings ->
ms-settings:defaultapps
) и нажмите кнопку Choose default apps by file type.
Найдите в списке расширений тип файлов .pdf. Затем щелкните по значку программы, которая ассоциирована с этим расширением и смените программу по-умолчанию для просмотра PDF файлов с Microsoft Edge на Acrobat.
Можно автоматически ассоциировать определенную программу с типами файлов, для которых она зарегистрирована. Для этого в разделе Default Apps выберите Set default by apps, найдите в списке нужную программу и нажмите кнопку Manage.
В открывшемся списке будет присутствовать список поддерживаемых приложением типов файлов. Выберите расширения файлов, которые должны открываться с помощью Acrobat Reader.
Изменить ассоциации программ с типами файлами в Windows из командной строки
В Windows вы можете использовать утилиту командной строки assoc для настройки сопоставления типов файлов с приложениями. Например, чтобы вывести программу, которая назначена для открытия файлов PDF, выполните команду:
assoc .pdf
В данном примере видно, что с этим расширением ассоциирован тип файлов AcroExch.Document.DC:
.pdf=AcroExch.Document.DC
Вывести все сопостаяления расширения с типами файлов:
assoc|more
Чтобы понять с каким исполняемым файлом ассоциирован тип файла AcroExch.Document.DC, выполните:
ftype AcroExch.Document.DC
Вы можете задать тип для определенных файлов с помощью команды:
ASSOC .csv=txtfile
В этом примере мы указали, что все CSV файлы нужно открывать как обычные текстовые файлы (по умолчанию с помощью notepad.exe).
Из командной строки вы можете создать или изменить ассоциацию файл с программой. Например, вы хотите чтобы все файлы с расширением tx1 открывались с помощью notepad++.exe. Сначала нужно создать ассоциацию расширения .tx1 с новым типом файлов tx1file.
assoc .tx1=tx1file
Теперь укажем программу, которая должна использоваться по умолчанию при открытии файлов с расширением tx1.
ftype tx1file="%programfiles(x86)%\"Notepad++\notepad++.exe" "%1"
Также вы можете использовать стороннюю утилиту SetUserFTA чтобы назначить файловые ассоциации в Windows. SetUserFTA эта утилита командой строки для быстрой настройки файловых ассоциаций (часто используется на RDS фермах Windows Server 2019/2022 для настройки сопоставления файлов с приложениями).
Список текущих ассоциаций и заданных для них progid в Windows можно вывести так:
SetUserFTA get
Чтобы задать ассоциацию для определенного типа файлов, используется команда:
SetUserFTA.exe extension progid
Например, назначить Chrome браузером по-умолчанию:
SetUserFTA http ChromeHTML
SetUserFTA https ChromeHTML
SetUserFTA .htm ChromeHTML
SetUserFTA .html ChromeHTML
Если для приложения не создан класс файлов или Progid, можно указать его исполняемый файл. Например:
SetUserFTA .txt applications\notepad++.exe
Это возможно для приложений, зарегистрированных в ветке реестра
\HKEY_CLASSES_ROOT\Applications
.
Экспорт, импорт и перенос настроек ассоциаций файлов Windows через XML файл
Текущие настройки ассоциаций файлов с программами, которые настроены под текущим пользователем, можно экспортировать в файл .XML с помощью DISM:
Dism.exe /online /Export-DefaultAppAssociations:C:\PS\DefaultAssoc.xml
Команда экспортирует в XML файл все настроенные у вас сопоставлений программ. Вы можете открыть файл DefaultAssoc.xml в любом текстовом редакторе, и посмотреть полный список настроек. Если вы хотите использовать только часть ассоциаций из этого списка (чтобы не переопределять имеющиеся настройки для остальных расширений файлов на других компьютерах), можно вручную отредактировать XML файл. Оставьте только строки с нужными вам расширениями файлов. К примеру, оставьте только строки для расширений .pdf и .fdf, остальные строки удалите. Должен получиться примерно такой XML-файл:
<?xml version="1.0" encoding="UTF-8"?> <DefaultAssociations> <Association Identifier=".fdf" ProgId="AcroExch.FDFDoc" ApplicationName="Adobe Acrobat Reader DC" /> <Association Identifier=".pdf" ProgId="AcroExch.Document.DC" ApplicationName="Adobe Acrobat Reader DC" /> </DefaultAssociations>
Полученный XML файл можно импортировать в образ Windows на другом компьютере с помощью DISM в режиме онлайн:
Dism.exe /Online /Import-DefaultAppAssociations:C:\PS\DefaultAssoc.xml
Важно. Данные настройки сопоставления расширений файлов с программами будут применены только к новым пользователям системы во время их первого входа. Если при импорте появится ошибка App default reset notification, проверьте синтаксис XML файла.
Также можно импортировать параметры ассоциаций в офлайн образ Windows в wim файл (который вы используете для раскатки образа на новые компьютеры). Сначала нужно смонтировать образ:
Dism /Mount-Image /ImageFile:C:\mnt\images\install.wim /MountDir:C:\mnt\offline
А затем импортировать xml файл:
Dism.exe /Image:C:\mnt\offline /Import-DefaultAppAssociations:\\Server1\Share\DefaultAssoc.xml
Совет. Текущие настройки ассоциаций файлов в офлайн образе Windows можно получить с помощью такой команды:
Dism.exe /Image:C:\mnt\offline /Get-DefaultAppAssociations
Настройка ассоциаций файлов в Windows с помощью GPO
В современных версиях Windows можно использовать новый параметр групповых политик, позволяющий применить xml файл с настройками ассоциаций файлов ко всем текущим пользователям компьютера.
Например, вы хотите применить групповую политику с настройками ассоциаций файлов ко всем компьютерам в определенном OU (Organizational Unit) Active Directory.
- Откройте консоль управления доменными GPO (
gpmc.msc
); - Найдите OU с компьютерами, для которых вы хотите применить файловые ассоциации и создайте новую GPO;
- Переключитесь в режим редактирования GPO и перейдите в раздел Computer Configuration -> Administrative Templates -> Windows Components -> File Explorer;
- Найдите параметр Set a default associations configuration file (Задать файл конфигурации сопоставлений по умолчанию);
- Включите политику и укажите UNC путь к вашему xml файлу (убедитесь, что путь не содержит кавычки или пробелы). Его можно разместить на общедоступном файловом сервере, в каталоге SYSVOL на контроллере домена, или предварительно скопировать файл на компьютеры с помощью GPP/ SCCM;
- Перезагрузите компьютер, чтобы применить новые ассоциации файлов.
Новые настройки сопоставлений будут применены ко всем пользователям компьютера после следующего входа.
Путь к XML файлу с новыми настройками ассоциации файлов содержится в параметре реестра DefaultAssociationsConfiguration в разделе Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System.
Т.к. Windows 10 отслеживает настройки файловых ассоциаций, при первой попытке открыть PDF файл может появится окно с подтверждением использования Acrobat Reader как программы по–умолчанию для открытия этого типа файлов (запрос появляется только один раз). Такой запрос будет всегда появляться также после установки нового приложения, которое регистрируется для открытия существующего типа файлов или протоколов. Можно скрыть данные уведомления, включив в этом же разделе GPO политику Do not show the ‘new application installed‘ notification (Не показывать уведомление “установлено новое приложение”).
Отметим, что пользователь в своем сеансе может изменить назначенные ассоциации файлов. Но при следующем обновлении групповой политики во время входа в систему, ассоциаций файлов пользователя будут перезаписаны настройками из xml файла.
Изменить файловые ассоциации через реестр Windows
Как мы уже говорили выше, в Windows 10/11 изменился подход к изменению настроек ассоциации файлов. В предыдущей секции мы показали, как настроить ассоциацию .pdf файла с Acrobat Reader через XML файл и групповую политику. Теперь посмотрим, как это выглядит в реестре.
Запустите редактор regedit.exe и перейдите в ветку
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.pdf\UserChoice
.
Обратите внимание, что в данной ветке с настройками ассоциация для расширения html есть два параметра:
- ProgId – идентификатор зарегистрированной программы для открытия этого типа файлов. Если вместо имени приложения указан длинный идентификатора, значит назначена ассоциация файла с современным приложением UWP/Metro. Проверьте, что оно не удалено из вашего образа Windows 10;
- Hash – хеш, который генерируется автоматически для валидации настройки сопоставления типа файлов с программой. Наличие этого хэша, гарантирует, что именно пользователь или администратор (через GPO) настроил данное сопоставление. Этот механизм нужен для защиты пользователей от вредоносных программ, которые могут подменить ассоциации файлов без его ведома.
Если вы попробуете руками изменить значение ProgId и назначить другую программу, значение Hash перестанет быть валидным. В этом случае Windows автоматически сбросит настройки ассоциации файла к значению по-умолчанию и пользователь увидит уведомление:
Стандартное приложение сброшено. Приложение вызвало проблемы с настройкой стандартного приложения для файлов .html, поэтому оно сброшено для Microsoft Edge.
An app default was reset. An app caused a problem with the default app setting for .html files, so it was reset to Microsoft Edge.
Соотвественно, в Windows 10 не сможете настроить сопоставление файлов через реестр, как это работало в Windows 7.
В сети есть неофициальная утилита SetUserFTA.exe, которая позволяет вычислить хэш и назначить сопоставление программе типу файлов напрямую через реестр.
Сброс всех ассоциаций файлов в Windows
С помощью следующей команды можно сбросить импортированные ранее настройки ассоциаций файлов в Windows:
Dism.exe /Online /Remove-DefaultAppAssociations
После выполнения данной команды, все новые пользователи системы будут загружаться со стандартными настройками ассоциаций (на имеющиеся профили пользователей системы такой сброс не действует).
Чтобы сбросить ассоциации файлов, настроенные пользователем вручную, нужно в панели Параметры -> Система -> Приложения по умолчанию (Default Apps) нажать на кнопку Сброс (Reset).
При этом все ассоциации файлов вернутся к состоянию чистой Windows 10.
Вы тут: Главная → Popular → Как правильно ассоциировать типы файлов с программами в Windows, и почему вам нужно учиться этому заново
Ассоциировать можно из самой программы, это минутное дело.
Из комментария в блоге
Как вы ассоциируете типы файлов с программами? Предположу, что чаще всего вы делаете это при установке программы или впоследствии из ее настроек. Если так, то в Windows 8 вас ждет сюрприз, и я бы не назвал его приятным…
Учитывая немалый объем статьи, я занес в FAQ краткие инструкции по ассоциации типов файлов и протоколов с программами.
Недавно один человек кинул мне в Messenger ссылку на одну статью MSDN, которая сразу напомнила мне об одной из тем форума Windows 8. Там участник мучился, пытаясь связать портативный проигрыватель с медиа-файлами. Сегодня я очень подробно объясню, почему у него возникла проблема. Вы также узнаете, что она может возникнуть с любыми программами, а не только с портативными.
[+] Сегодня в программе
Обзор изменений в сопоставлении типов файлов программам
Давайте посмотрим на основные способы связи типов файлов с программами, а также сравним некоторые моменты в Windows 8 с предыдущими ОС. Исторически в Windows программы сопоставляются различным типам файлов несколькими способами.
Панель управления
В панели управления можно найти группу Программы по умолчанию, два элемента которой станут главными героями сегодняшнего рассказа.
Увеличить рисунок
Задание программы по умолчанию работает очень просто. Выделив программу в списке, вы можете назначить ее сразу для всех типов файлов, либо выбрать определенные. В обоих случаях список ограничен типами, для которых программа зарегистрировалась в реестре.
Увеличить рисунок
Здесь Windows 8 не отличается от своей предшественницы, но роль этого окна сильно возросла, в чем вы убедитесь, дочитав статью до конца.
Сопоставление типов файлов и протоколов с конкретными программами – это общий список типов файлов и протоколов из раздела реестра HKCR, для которых вы можете указать произвольную программу. Причем для каждого типа нужно выбирать программу отдельно, т.е. возможность массовой ассоциации отсутствует. По сути, этот способ аналогичен контекстному меню «Открыть с помощью».
Увеличить рисунок
Здесь тоже все очень похоже на Windows 7 – кнопка «Изменить программу» или двойной щелчок по расширению вызывает окно выбора программы. Но на рисунке в столбце «Умолчания» также хорошо виден новый тип – «Не выбрано», о котором я расскажу чуть ниже.
Двойной щелчок по файлу и команды в контекстном меню
Когда вы открываете файл двойным щелчком, срабатывает одна из команд контекстного меню, выделенная в нем жирным шрифтом.
Команда «Открыть»
В Windows 7 эта команда выполнялась в одном из двух случаев.
- Какая-либо программа уже связана с типом файла, который зарегистрирован в системе. В этом случае файл просто открывается в программе.
- Тип файла не зарегистрирован. В этом случае в Windows 7 вы видели такую картину:
Увеличить рисунок
Кстати, вы когда-нибудь пользовались поиском соответствия в Интернете? В оболочку заложена ссылка http://go.microsoft.com/fwlink/?LinkId=57426&Ext=xyz, где вместо xyz подставляется расширение.
В Windows 8 команда «Открыть» выполняется только в первом случае, а во втором вы увидите новое меню «Открыть с помощью».
Команда «Открыть с помощью»
В Windows 7 эта команда становится главной в контекстном меню, когда тип файла зарегистрирован в реестре. В Windows 8, напротив, выделенный пункт меню «Открыть с помощью» означает, что тип файла не зарегистрирован. Кроме того, изменился и внешний вид окна.
Увеличить рисунок
Выбор произвольного приложения теперь не на виду, и приходится прокручивать список до конца, чтобы добраться до него.
Команда «Выбрать программу»
Этот новый пункт контекстного меню отражает появившийся в Windows 8 тип сопоставления «Не выбрано». Команда «Выбрать программу» становится главной в меню при соблюдении двух условий:
- Тип файла зарегистрирован, но с ним не связана ни одна программа.
- Какая-либо программа (в том числе идущая с системой) обозначила свою способность работать с этим типом.
При таком раскладе в Windows 7 использовалась команда «Открыть с помощью» (там, кстати, и находится пункт «Выбрать программу»). Однако при двойном щелчке по файлу появлялось пресловутое окно с предложением поискать соответствующую программу в Интернете, которое многие отключали твиком.
Увеличить рисунок
В Windows 8 команда «Открыть с помощью» в этом случае тоже есть, но при двойном щелчке по файлу вы сразу видите программы, в которых его можно открыть.
Увеличить рисунок
Родственная связь между командами «Выбрать программу» и «Открыть с помощью» хорошо видна. Разница между ними в том, что в Windows 8 при открытии файла с помощью программы необязательно связывать ее с данным типом, а выбор программы – это по сути ее ассоциация с типом файла. Обратите внимание, что в этом окне нет флажка «Использовать это приложение для всех файлов xyz».
Список рекомендуемых программ
Раз уж я забрался в дебри меню «Открыть с помощью», расскажу о том, как программы попадают в список рекомендуемых, который отображается в меню «Открыть с помощью» и «Выбрать программу».
Для начала программы могут при установке ассоциировать с собой тип файла, когда прописывают его в системе. Если тип файла уже зарегистрирован, создается раздел OpenWithProgIDs или OpenWithList в разделе реестра
HKEY_CLASSES_ROOT\.xyz\
В первом случае в разделе перечисляются идентификаторы программ, а во втором – для каждой программы создается подраздел с именем ее исполняемого файла.
Данные настройки являются системными, т.е. эти программы рекомендуются всем пользователям. Но есть также индивидуальные настройки.
Когда вы открываете файл, используя меню «Открыть с помощью», Windows запоминает ваши предпочтения в разделе реестра
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts
Для каждого расширения система отслеживает не только список программ, но и то, в каком порядке вы их открывали.
Параметр MRUList показывает, что последним использовался WordPad, а до этого я открывал файл в блокноте.
В этом аспекте Windows 8 почти ничем не отличается от Windows 7, но мы уже подошли к главному изменению в новой ОС Microsoft!
Настройки программы
Я думаю, что многие из вас шли именно этим путем, ассоциируя программу с типами файлов при установке или в ее настройках. Выглядит это примерно так:
Увеличить рисунок
В принципе, удобный и привычный способ, но…
В Windows 8 программы не могут сами изменять ассоциации для типов файлов, которые уже связаны с другими программами! Это верно как при установке программы, так и впоследствии, однако в обоих случаях работает сопоставление с незанятыми типами файлов.
Если разработчики программы учли это нововведение, после установки должно отображаться специальное сообщение, а в параметрах программы настройка ассоциаций должна отсутствовать или обязана вести в панель управления. Если же создатели программы не в курсе изменения, сопоставления просто не произойдет. И, конечно, это точно не сработает с портативными программами!
Я думаю, теория вас уже утомила, посему перехожу к практике!
Пример с браузером Opera
Браузер – это хороший пример программы, которая ассоциируется с несколькими типами файлов и протоколов. Давайте посмотрим, как это теперь происходит в Windows 8 (на момент написания статьи версия Opera 12.02).
Полная установка Opera
Вы скачали программу, запустили установку и по ходу дела назначили Opera основным браузером, что является стандартным вариантом. По окончании установки вы должны были увидеть такое сообщение:
Щелкнув его, вы могли бы на самом деле задать Opera в качестве основного браузера.
Если же вы не среагировали на это сообщение, то события стали развиваться совсем по другому сценарию. На первый взгляд, все прошло как обычно. Но, допустим, во время чата в Skype вам прислали ссылку. Она откроется не в Opera, а в браузере, который был основным ранее. Логично предположить, что после этого вы захотите проверить или изменить настройки.
Увеличить рисунок
Действительно, в панели управления видно, что Opera зарегистрирована в программах по умолчанию, но ассоциирована лишь с 9 из 29 типами файлов и протоколов. Это не означает, что при указании основного браузера должна устанавливаться связь со всеми типами файлов, которые он может открыть.
Однако браузеру не удалось завладеть некоторыми ассоциациями (в данном случае – ключевыми протоколами, как видно на рисунке ниже), потому что они уже были сопоставлены с другими программами.
По крайней мере, разработчики Opera правильно спроектировали браузер в одном важном аспекте. Если вы решите настроить ассоциацию в параметрах программы, вам откроется именно элемент панели управления!
Увеличить рисунок
Теперь вы увидели на практическом примере, что Opera не стала основным браузером, несмотря на обещание установщика. Он и не должен был этого обещать в соответствии с новыми рекомендациями Microsoft, о которых речь пойдет чуть ниже. Таким образом, несмотря на уведомление после установки и реализованный переход в панель управления из параметров программы, Opera пока частично несовместима с Windows 8.
Портативный вариант Opera
У вас где-то на диске есть папка с портативным браузером Opera. Конечно, в новой системе браузер не зарегистрирован, поэтому в элементе панели управления «Программы по умолчанию» его нет.
Когда вы попытаетесь задать типы файлов в параметрах программы, кнопка «Настройка» не будет работать совсем! Это происходит потому, что системе неизвестно, с какими типами файлов может работать незарегистрированная в реестре программа.
Более того, вы вообще не сможете сделать основным портативный браузер или почтовый клиент, потому что для привязки к протоколу программа должна быть зарегистрирована в системе!
В этом вы можете убедиться, открыв в панели управления Сопоставление типов файлов и протоколов с конкретными программами. Можно, конечно, зарегистрировать программу вручную в реестре, но намного проще использовать установщик.
Пример с IrfanView
Как правило, мы связываем проигрыватели и программы для просмотра изображений с целым набором типов файлов, причем их может быть даже больше, чем у браузера. Я выбрал IrfanView, чтобы проиллюстрировать более серьезную несовместимость с Windows 8, и, как следствие, обманчивость интерфейса. На момент написания статьи версия IrfanView 4.33.
Полная установка IrfanView
На этапе установки IrfanView предлагает вам связать с собой множество типов файлов и даже переспрашивает по ходу дела – мол, вы уверены, что хотите изменить ассоциации?
Увеличить рисунок
Программа явно не в курсе нововведений в Windows 8.
Первое отличие от Opera заключается в том, что после установки IrfanView не отображается системное сообщение о наличии новой программы для просмотра изображений и проигрывания медиа-файлов. Как следствие, не удается связать ее с поддерживаемыми типами файлов сразу после установки.
Второе отличие заключается в том, что в параметрах IrfanView невозможно связать программу с некоторыми типами файлов. Допустим, вы хотите ассоциировать IrfanView со всеми изображениями, в том числе в формате JPEG. Вы ставите флажок, жмете ОК и… фотографии продолжают открываться в той же программе, что и раньше.
Увеличить рисунок
На рисунке видно, что IrfanView завладел рядом расширений, но не всеми. Заданная в параметрах программы ассоциация с JPEG, не сработала, потому что изображения в этом формате связаны с другой программой, а Windows больше не позволяет программам изменять имеющиеся ассоциации.
Для полной совместимости программы с Windows 8 автору нужно реализовать открытие элемента панели управления, чтобы не путать пользователей неверной информацией в настройках IrfanView.
По крайней мере, IrfanView правильно регистрируется в системе. Это означает, что когда вы попытаетесь открыть тип файла, сопоставление которого изменяли из настроек программы, система выведет такое сообщение:
Оно позволяет сопоставить программу с этим типом файла. Впрочем, IrfanView также заносит себя в список программ по умолчанию. и в панели управления можно ассоциировать его со всеми или избранными типами файлов.
Портативный вариант IrfanView
Как я объяснил чуть выше, IrfanView не удастся связать с некоторыми ключевыми типами файлов из параметров программы. А поскольку программа не зарегистрирована в системе, решение есть только одно. Нужно открыть элемент панели управления Сопоставление типов файлов и протоколов с конкретными программами и настраивать там вручную каждый тип файла, коих IrfanView поддерживает свыше 70.
Рекомендации Microsoft разработчикам
Сейчас дело усугубляется тем, что не все разработчики в курсе изменения и/или не спешат обновлять свои программы. В результате интерфейс программ вводит пользователей в заблуждение и сильно запутывает их.
Ситуация в чем-то напоминает появление UAC в Windows, хотя масштаб и значимость изменения не столь велики. Но точно так же потребуется какое-то время, пока программы «научатся» правильно вести себя в системе.
Я предлагаю вам взглянуть на некоторые рекомендации Microsoft разработчикам, внедрение которых вы скоро начнете замечать в интерфейсе новых версий программ. Теперь программы в Windows:
- Не должны отслеживать изменения в ассоциациях с типами файлов и протоколов. Подобное окно вам хорошо знакомо, не правда ли?
Вообще, рекомендация несколько странная с учетом того, что возможность изменить привязку из программы все-таки существует. Да и Microsoft сама ее нарушает, как вы увидите ниже.
- Не должны пытаться установить себя в качестве программы по умолчанию для файлов и протоколов, в том числе из параметров программы. Как вы понимаете, сейчас это делается сплошь и рядом.
Как видите, обозреватель Microsoft не только официально стал браузером (что я и другие люди предлагали еще в 2008 году!), но и вроде бы играет по новым правилам. Ссылка «Использовать по умолчанию» ведет в панель управления, а опция мониторинга вовсе исчезла. Однако каким-то образом IE10 все же отслеживает, что он не является основным браузером, что несложно проверить при наличии другого браузера (если у вас его нет, нажмите здесь в IE10).
- Должны регистрироваться в системе, чтобы после установки Windows выводила сообщение о новой программе.
- Должны интегрироваться в элемент панели управления «Программы по умолчанию». Это позволяет быстрее всего ассоциировать программу. В API предусмотрена функция для этой цели, и вы уже видели, как ее использует Opera.
В записи Зачем программам нужны установщики я упомянул, что они нужны для регистрации программ в системе. Теперь их роль очень сильно возросла!
Размышления на тему удобства и простоты использования
Microsoft не объясняет мотивов изменения в механизме ассоциации типов файлов с программами. Компания лишь подчеркивает, что теперь пользователи целиком и полностью контролируют этот процесс. Это правда, равно как и то, что сделать это можно лишь средствами системы.
Однако далеко не все будут рады этому контролю, потому что за многие годы люди привыкли, что ассоциации можно менять в параметрах программ.
Следуя перечисленным ниже рекомендациям, разработчики постепенно начнут убирать из параметров программ связь с конкретными расширениями и протоколами, отсылая нас в панель управления. Например, у меня так делает не только Opera, но и VLC. Но это не решит всех проблем.
Сила привычки у пользователей
В любом случае, пользователям понадобится время, чтобы понять, что после установки программы надо либо сразу реагировать на сообщение о новой программе, либо идти в панель управления и там ассоциировать программу. Сам по себе такой подход не является проблемой для пользователей, если не вдаваться в тонкости интерфейса.
Однако, учитывая многолетнюю практику смены ассоциаций в настройках программ, люди далеко не сразу поймут это изменение в поведении системы.
Пользователи установленных приложений будут гадать, кроется проблема в системе или программе. Что касается владельцев портативных программ, они будут считать, что возникла проблема с системой, ибо «раньше все работало».
Непоследовательное поведение программ
Сейчас, пока программы не адаптировались, самым неприятным аспектом является их неадекватное поведение. Речь о том, что некоторые ассоциации применяются из параметров программы, а некоторые – нет. Причем зависимость совершенно неочевидна!
Так, назначая Notepad++ для различных группа файлов, я сам впал в ступор, когда программа ассоциировалась с PHP, но не с TXT, хотя в параметрах рапортовала о связи.
Откуда мне было знать, что это произошло исключительно потому, что формат TXT уже связан с блокнотом?
Конечно, я быстро сообразил зайти в панель управления, где все и настроил. Впоследствии я уже уверенно поступал так же с некоторыми другими программами. Но такое поведение программ оставалось для меня загадкой до тех пор, пока я не прочел об изменениях в MSDN.
Неудачное системное сообщение о новой программе
Сообщение фактически является продолжением установки программы, позволяя ассоциировать ее с типами файлов.
Однако я вижу у него ряд недостатков, которые к тому же очень сильно проявляются в переходный период, пока программы не адаптированы к изменениям.
- Не совсем очевидно, что сообщение является следствием установки программы. Конечно, догадаться несложно, но было бы намного проще, если бы в сообщении указывалась только что установленная программа (помните выделение новых программ цветом в меню «Пуск»?).
- Совсем не очевидно, что на это сообщение обязательно нужно среагировать, если хочется ассоциировать программу с ее типами файлов по окончании установки. Ведь установщик программы и так обещал это сделать! Впрочем, тут больше виновата не адаптировавшаяся программа, нежели система.
- Сообщение исчезает через небольшой промежуток времени, что логично. Однако если вы запустили установку и отошли от ПК, вы пропустите сообщение, и придется выполнять ассоциацию в панели управления, о чем еще нужно знать.
- Текст сообщения может быть обманчивым, как происходит в случае с установкой Opera и показанном выше сообщением. По иронии судьбы оно вовсе не означает, что браузер теперь связан с типами файлов для веб-страниц (HTM и HTML). На самом деле программа ассоциируется с протоколами (HTTP, HTTPS и т.п.) и некоторыми другими типами файлов. Возможно, это является недоработкой создателей Opera, но в Windows 7 связь с веб-страницами применяется нормально.
- Наконец, непоследовательно работает появление сообщения для одной и той же программы. В моих экспериментах оно всегда появлялось при первой установке браузеров. Но после удаления программы, контрольной перезагрузки и повторной установки сообщение уже не отображалось. Создалось ощущение, что информация о программе где-то сохранилась.
Возможно, по отдельности эти пункты не так страшны, но в совокупности картина далеко не радужная.
Предыдущие ОС Microsoft
Другой интересный момент, это проектирование программ под операционные системы разных поколений. Поведение программы при попытке изменения ассоциаций будет варьироваться в зависимости от ОС. Вот как выглядит попытка сделать Chrome основным браузером в Windows 8:
Также предположу, что создателям ряда программ придется закладывать в установщик более тонкую проверку на версию операционной системы. Так, если просто убрать из установщика Opera возможность сделать программу основным браузером в системе, та же Windows 7 никак не предупредит вас о том, что есть новая программа для веб-серфинга! И это будет уже серьезная проблема с точки зрения пользовательского опыта.
Я уже не говорю о том, что Windows XP до сих пор поддерживается, а в ней предок элемента управления «Программы по умолчанию» сильно отличается. И там вовсе не так удобно массово ассоциировать программу с типами файлов. Кстати, о массовости…
Массовая ассоциация категорий файлов
Многие проигрыватели и программы для просмотра изображений умеют воспроизводить аудио и видеофайлы. Допустим, вы хотите назначить IrfanView только для открытия изображений, потому что для музыки и фильмов у вас есть более удобный проигрыватель. Создатель IrfanView заботливо предусмотрел такую кнопку в параметрах программы:
Я уверен, что вы встречали нечто подобное и в других программах (выше в статье был снимок настроек AIMP с похожими функциями). Как вы понимаете, теперь такие опции бесполезны, но истинная проблема в том, что Windows 8 не предлагает ничего взамен!
Конечно, в панели управления есть возможность выбрать сразу все типы файлов, либо отмечать их по одному. Но тот же IrfanView поддерживает свыше 70 типов, из которых порядка 15 не являются изображениями. Связать эту программу только с картинками теперь стало сложнее.
Мои рекомендации вам
Пользуясь сторонними программами, вы рано или поздно столкнетесь с их неадекватным поведением в Windows 8 при ассоциации файлов. Если вы осилили всю запись, вам мои советы будут абсолютно понятны.
Будьте готовы к частично несовместимым программам
Понятно, что вероятность столкнуться с проблемой намного выше в программах, которые сопоставляются сразу с несколькими типами файлов. В их число входят:
- браузеры и почтовые клиенты
- текстовые и графические редакторы
- программы для просмотра изображений
- проигрыватели медиа-файлов
Если программу не получается сопоставить с какими-то расширениями, вы сразу распознаете причину и вспомните эту статью.
Используйте установщики программ вместо их портативных версий
Это повышает вероятность правильной регистрации программ в системе и упрощает для вас ассоциацию с типами файлов. Я понимаю, что портативные программы удобны, потому что хранят настройки в своих папках. Однако теперь вам надо будет решать, стоит ли овчинка выделки.
Да, на загрузку и установку программы требуется время, но взамен у вас будет последняя версия.
Переносите параметры программ средствами Windows
Не надо думать, что отказ от портативных программ равносилен потере параметров, настроенных кропотливым трудом. Большинство современных программ грамотно сохраняет свои параметры в папках %AppData% и %LocalAppdata%. Их можно легко мигрировать с одной системы на другую средством переноса данных, если быть в курсе некоторых тонкостей.
Не игнорируйте системное сообщение о новых программах
Если сообщение появилось после установки программы, нажмите на него – это ускорит процесс сопоставления и сэкономит вам время.
Отучайтесь настраивать ассоциации в параметрах программ
Как вы уже поняли, это не позволяет переопределить ассоциации, что может быть вовсе неочевидно из настроек программы. Если вам нужно связать программу лишь с одним типом файлов, быстрее всего к цели приведет меню «Открыть с помощью».
Если же требуется массовое сопоставление, сразу открывайте «Программы по умолчанию» в панели управления и действуйте в зависимости от того, зарегистрирована ли программа в системе.
Заключение
Опрос в конце предыдущей записи показал, что половина читателей блога несомненно столкнется с проблемой в Windows 8, пытаясь сопоставить свои портативные программы с их типами файлов. Им придется повозиться в общем списке расширений.
Однако даже использование установщиков программ не застрахует от нестыковок, если вы будете настраивать ассоциации в параметрах программ. Впрочем, установщики несомненно подсластят пилюлю, благодаря регистрации программы в элементе панели управления «Задание программ по умолчанию».
«Домашнее задание»
Если вы уже установили Windows 8, я предлагаю вам провести инвентаризацию своих любимых программ! Напишите в комментариях, как в их последних версиях обстоят дела с совместимостью в плане ассоциаций.
В частности, обращайте внимание на три момента:
- предложение ассоциироваться с типами файлов при установке программы
- отсутствие системного сообщения о новой программе после ее установки
- наличие настроек для связи с конкретными типами файлов в параметрах программы
Любой из них свидетельствует о том, что программе нужна доработка. Будет очень интересно посмотреть на результаты!
Я догадываюсь, что сегодняшний материал способен вызвать очередную порцию ненависти к Windows 8 в комментариях блога. Напоминаю, что любые мнения, не относящиеся к теме обсуждения, следует направлять сюда. Так или иначе, все будущие ОС Microsoft с большой вероятностью унаследуют такое поведение вне зависимости от объема сотрясенного вами воздуха. Лучше направить свою энергию на то, чтобы довести информацию о необходимых изменениях до сведения разработчиков программ!
Иногда пользователи Windows 11/10 ошибочно назначают неправильные ассоциации для того или иного файла: при открытии выбирают какое-либо приложение и нажимают кнопку «Всегда» для его использования на постоянной основе.
В этой инструкции подробно о способах удалить неверные или, если требуется — восстановить изначальные ассоциации файлов.
Редактор реестра
Если вы выбрали какое-либо приложение для ранее не зарегистрированного типа файла, теперь он отображается со значком соответствующего приложения и всегда открывается в нём, вы можете легко удалить эту ассоциацию в реестре:
- Нажмите клавиши Win+R на клавиатуре, либо нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить», введите regedit и нажмите Enter.
- В разделе реестра
HKEY_CLASSES_ROOT
найдите подраздел с расширением нужного типа файла, удалите этот раздел: нажмите по нему правой кнопкой мыши и выберите пункт «Удалить».
- Сделайте то же самое в разделе реестра
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\
- Перезагрузите компьютер.
После этого файл снова не будет ассоциирован с какими-либо программами.
Если требуется оставить файл без ассоциаций, дальнейшие действия не требуется, если же нужно назначить иную программу в качестве используемой по умолчанию, то при попытке открыть файл вы увидите соответствующий запрос для выбора подходящего приложения.
Параметры
Для изначально зарегистрированных в системе типов файлов, для которых ассоциации были заменены на неверные, а также в случаях, когда вам требуется переназначить ассоциированную программу, вы можете использовать «Параметры».
- В Windows 11 перейдите в Параметры — Приложения — Приложения по умолчанию. В Windows 10 дополнительно выберите пункт «Выбор стандартных приложений для типов файлов» справа.
- В Windows 11 используйте поиск по расширению, как на скриншоте, в Windows 10 просто найдите нужное расширение в списке.
- Нажмите по расширению и выберите нужное приложение. Заданное при установке Windows приложение будет указано в разделе «Рекомендуемые приложения».
- Нажмите кнопку «Задать по умолчанию».
Готово, ассоциация типа файла восстановлена.
Дополнительно:
- Если ассоциации файлов были нарушены недавно, а на компьютере сохранились точки восстановления системы, можно использовать их — это восстановит, в том числе и ассоциации файлов.
- В сети встречал следующий «манёвр»: создается пустой текстовый файл и ему назначается расширение .exe, после чего для проблемного типа файла используется контекстное меню: Открыть с помощью — Выбрать другое приложение — Выберите приложение на компьютере, выбирается созданный EXE файл, нажимается кнопка «Всегда», чтобы назначить ассоциацию для открытия этого типа файла с помощью созданного файла. Следующий шаг — удаление этого EXE файла с последующей перезагрузкой компьютера.
- Существуют сторонние программы для исправления ассоциаций файлов, например — File Association Fixer Tool.
Некоторые дополнительные возможности, связанные с изменением приложений, назначенных для типов файлов описаны в статьях: Программы по умолчанию Windows 11, Программы по умолчанию Windows 10, Как исправить ассоциации файлов EXE и LNK.
Managing default file associations apps in Windows 10 and Windows 11 is one of the most important features when managing Windows. In this article we will see how to specify Adobe Reader DC as the default PDF reader and how to distribute the configuration automatically with GPOs (Active Directory) or SCCM (Configuration Manager).
In Windows 10 and Windows 11, file association is User-based. Therefore, to deploy the default file association you must first configure a reference machine and then export its configuration to an XML file that you will distribute to the rest of the computers.
TL;DR
Export default applications by file type
The first step in managing default file association is to export your configuration to an XML file.
When you run some applications (such as Adobe Reader) the program asks you if you want to configure it as the default program for certain types of files. If you have not done so, you can configure it in the settings of “Settings > Apps > Default apps > Choose defaults by file type“. Here you look for the extensions that you want to manage and choose the default application:
In Windows 11 you have a search engine to specify an extension and assign an application. In the following image we have searched for “.pd” and assigned Adobe Acrobat Reader DC to extensions. PDF:
Once the configuration is done, open a Command Prompt (as an administrator) and use a DISM command to export the current user’s settings to a . XML:
Dism.exe /online /Export—DefaultAppAssociations:C:\Temp\DefaultApps.xml |
Now you have a DefaultApps.xml with all of our user’s default file associations. In case you want to remove some associations, you can delete the lines.
In the example below, all lines not associated with Adobe Reader DC and PDF files have been deleted:
<?xml version=«1.0» encoding=«UTF-8»?> <DefaultAssociations> <Association Identifier=«.acrobatsecuritysettings» ProgId=«AcroExch.acrobatsecuritysettings» ApplicationName=«Adobe Acrobat Reader DC» /> <Association Identifier=«.fdf» ProgId=«AcroExch.FDFDoc» ApplicationName=«Adobe Acrobat Reader DC» /> <Association Identifier=«.pdf» ProgId=«AcroExch.Document.DC» ApplicationName=«Adobe Acrobat Reader DC» /> <Association Identifier=«.pdfxml» ProgId=«AcroExch.pdfxml» ApplicationName=«Adobe Acrobat Reader DC» /> <Association Identifier=«.pdx» ProgId=«PDXFileType» ApplicationName=«Adobe Acrobat Reader DC» /> <Association Identifier=«.xdp» ProgId=«AcroExch.XDPDoc» ApplicationName=«Adobe Acrobat Reader DC» /> <Association Identifier=«.xfdf» ProgId=«AcroExch.XFDFDoc» ApplicationName=«Adobe Acrobat Reader DC» /> <Association Identifier=«acrobat» ProgId=«acrobat» ApplicationName=«Adobe Acrobat Reader DC» /> </DefaultAssociations> |
Now you can distribute the XML of default file associations by file type using one of the following methods.
The most common method of distributing the default application file is with Active Directory’s Group Policy (GPO). Create a new GPO and go to the section “Computer Configuration > Policies > Administrative Templates > Windows Components > File Explorer > Set a default associations configuration file” and configure it with the DefaultApps.xml’s path.
As you can see from the images, you need to use a network share that all computers in the domain can access. It is also possible to copy the DefaultApps.xml to each computer and put a local path, but this makes it difficult to update the .XML. In my case I recommend using a share, specifically the sysvol.
Every time you want to add a new association in Windows 10 or Windows 11, you will only have to update the DefaultApps in the network share. Automatically when your devices update their policies, they will check the DefaultApps.xml and apply the changes.
Microsoft documentation say that despite having this GPO applied, users will be able to configure the application association in Windows. This is partially true, as the interface is not locked and the change can be made. But each time the policies are updated, the GPO settings will be reapplied.
Another alternative to distribute the default application file is with Microsoft Endpoint Configuration Manager (MEMCM, formerly called SCCM). To do this we can distribute a Package or launch a step of “Run Command Line” from a Task Sequence. With both methods, you must include within the package the DefaultApps.xml and launch the following command:
dism.exe /online /Import—DefaultAppAssociations:.\defaultapps.xml |
You can distribute the package to the computers or add the step in a Task Sequence of New Computer as follows (after installing the Windows 10 or Windows 11 and restarting):
View default apps by extension in Windows
You can see the list of default applications set for each extension with the following CMD command:
dism.exe /Online /Get—DefaultAppAssociations |
Remove default apps by extension in Windows
To remove all the default applications by extension configured in Windows you can run the following CMD command:
dism.exe /Online /Remove—DefaultAppAssociations |
With this command you will eliminate all the customization made both manually and by GPO or SCCM, but in case there is an active GPO / Distribution it will be configured automatically again.
How to set default file associations apps in Windows 10 and Windows 11?
In Windows 10 and Windows 11 you can configure the default file associations by file type in “Settings > Apps > Default apps > Choose defaults by file type” as indicated in this manual.
How to configure a GPO to set default file associations apps in Windows 10 and Windows 11?
You must create a GPO in Active Directory and configure the “Computer Configuration > Policies > Administrative Templates > Windows Components > File Explorer > Set a default associations configuration file” section by adding an .XML that you have previously created with this manual.
Passionate about IT and Microsoft technologies with more than 5 years of experience in complex environments (Banking, Congresses and Public Services). Exploring and learning about Modern Workplace every day. I write about SCCM, Windows, Microsoft Intune, Hyper-V, etc…
В этой публикации, друзья, рассмотрим такой вопрос: ассоциации файлов в Windows 11. Ассоциация файла в Windows – это связь между определённым типом файла (форматом или расширением, например, TXT, DOCX, XLSX, PDF, JPG, PNG, MP3, MP4, ZIP, RAR) и программой, используемой для его открытия по умолчанию, т.е. по двойному клику на файле. Когда мы открываем файл, операционная система использует информацию об ассоциации файла для определения программы, которую нужно запустить. Как назначить определённому типу файлов нужную ассоциацию, как её при необходимости изменить? И как исправить проблемы с ассоциациями файлов, в частности, системных типов как то: EXE, MSI, LNK, BAT, CAB, CMD, COM, INI, INF, ISO, REG, VHD, VHDX и т.п.?
Ассоциации для форматов, поддерживаемых штатными приложениями Windows 11, установлены по умолчанию – такие типы файлов открывают предустановленные приложения. Файлы изображений открываются в приложении «Фотографии», аудио- и видеофайлы – в приложении «Медиаплеер», TXT-файлы – в приложении «Блокнот» и т.п. При установке сторонних программ они сами ассоциируются со своими файлами. Некоторые программы, работающие с универсальными типами файлов — документов, музыки, изображений и т.п., могут сами себя назначать для них программами по умолчанию, если мы при установке или первичной настройке этих программ установим или не заметим предустановленные опции такого назначения.
При запуске файла, для типа которого в Windows 11 не установлена программа по умолчанию, операционная система предложит нам выбор программы, с помощью которых потенциально можно открыть такой файл. И мы сможем выбрать, хотим ли открывать файл в этой программе всегда, либо нам нужно её использовать только один раз.
Если нужной программы нет в списке, оттягиваем перечень предложений вниз. В самом низу будут опции, которые позволят нам выбрать нужную программу, указав её файл запуска. Это может быть как установленная, так и портативная программа Win32. Если программы, работающей с таким форматом нет на компьютере, можем воспользоваться предложением посмотреть подходящее приложение в Microsoft Store. Там, кстати, есть не только современные UWP-приложения, но также многие популярные программы Win32.
Назначить или изменить программу по умолчанию для нужного типа файла можем в свойствах любого файла этого типа. Кликаем файл, жмём Alt+Enter, во вкладке «Общие» жмём «Изменить», выбираем нужную программу и жмём «Задать по умолчанию».
После выполнения этих шагов выбранная программа будет открывать файлы этого типа по умолчанию в Windows 11.
Примечание: друзья, если для нужного вам типа файла не предлагается установленное UWP-приложение, работающее с таким типом файлов, жмите внизу «Выберите приложение на компьютере» и укажите путь к ярлыку приложения. Где взять ярлык? Запускаем командлет «Выполнить» клавишами Win+R, вводим:
shell:AppsFolder
Жмём на приложении контекстное меню и выбираем «Создать ярлык». Если приложения нет, создаём его ярлык с помощью утилиты Store Apps Tool.
В системном приложении «Параметры» Windows 11 можно назначать программы по умолчанию для типов файлов и ссылок, открывающих веб-контент, запускающих функции мессенджеров, почтовиков и прочих программ, которые работают с сетью или Интернетом. Идём по пути:
Приложения → Приложения по умолчанию
Здесь можем выбрать в перечне нужную программу или UWP-приложение из числа установленных в Windows 11.
Можем посмотреть, с какими типами файлов или ссылок может работать эта программа, кликнуть на нужные. И задать эту программу таковой по умолчанию.
Если программ много, можем использовать поиск по типу файла или ссылки, либо по названию программы.
В конце перечня программ есть отсылки на сопутствующие параметры. В их числе – настройки установки программ по умолчанию в перечнях типов файлов и ссылок.
В этих перечнях (также можно с помощью поиска) выбираем нужный тип файла или ссылки. Кликаем и задаём программу по умолчанию.
Определённые проблемы в работе Windows 11 – не запускаются программы вообще или для определённых типов файлов, не открываются диски и папки проводнике и т.п. – могут быть вызваны нарушениями ассоциаций файлов. Нарушения могут иметь место быть вследствие действия вирусов, работы сторонних программ (в частности, твикеров и оптимизаторов), наших пользовательских действий, установки проблемного обновления операционной системы. Нарушения ассоциаций файлов устраняются путём их сброса к изначальным значениям. И далее для обычных типов файлов и ссылок нужно по новой задать программы по умолчанию. Как выполнить сброс ассоциаций?
Сброс ассоциаций обычных типов файлов (не системных, не исполняемых типов файлов) и ссылок выполняется в системном приложении «Параметры». Идём по тому же пути, где и задаются программы по умолчанию:
Приложения → Приложения по умолчанию
Внизу в сопутствующих параметрах нам нужен блок «Сбросить все приложения по умолчанию». Жмём в нём «Сбросить». И подтверждаем.
А как сбросить системные типы файлов — EXE, MSI, LNK, BAT, CAB, CMD, COM, INI, INF, ISO, REG, VHD, VHDX и пр. — к дефолтным значениям? Есть несколько способов.
Одно из эффективных решений для исправления ассоциаций системных файлов — бесплатная портативная утилита File Association Fixer Tool. Исправляет ассоциации большинства системных форматов, включая ассоциации дисков и папок в проводнике. Запускаем утилиту, дважды кликаем проблемный тип файла. И всё – исправление применено.
Альтернатива предыдущей утилите — также бесплатная портативная утилита File Association Fixer. Здесь меньший перечень исправляемых системных форматов, и есть обычные форматы. Отмечаем галочкой нужные, жмём «Fix Selected». И всё – исправление применены.
Ассоциацию любого типа файла можно сбросить путём удаления его в системном реестре Windows.