Это мы изобрели окна, это мы сделали дефолт

Обновлено: 21.11.2024

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

Вы можете использовать параметр CopyProfile, чтобы настроить профиль пользователя, а затем скопировать этот профиль в профиль пользователя по умолчанию. Используя CopyProfile, вы можете настраивать установленные приложения, драйверы, фоновый рисунок рабочего стола, параметры Internet Explorer и другие конфигурации. Имейте в виду, что некоторые настройки не сохраняются при использовании CopyProfile .

Использование CopyProfile для настройки меню "Пуск" не поддерживается. Вместо этого вы можете использовать следующие методы для управления пользовательскими макетами начального экрана

  • Windows 11:
    • См. раздел Настройка макета начального экрана Windows 11.
    • ПВТ могут использовать layoutmodification.xml . Дополнительные сведения см. в разделе Настройка макета начального экрана.
    • ИТ-специалисты могут использовать следующие ресурсы, чтобы узнать, как управлять меню "Пуск" в Windows 10:

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

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

    После запуска CopyProfile необходимо удалить некоторые записи реестра для пользователя по умолчанию, чтобы предотвратить проблемы со сбросом. Вот как это сделать:

    Найдите и выберите это поддерево:
    HKEY_USERS

    В меню "Файл" выберите "Загрузить куст".

    Группа пользователей по умолчанию отсутствует по умолчанию. Его необходимо загрузить, отредактировать, а затем выгрузить вручную.

    Введите C:\Users\Default\NTUSER.DAT в поле Имя файла и выберите Открыть.

    В диалоговом окне "Загрузить куст" введите временное имя в поле "Имя ключа" и нажмите клавишу ВВОД.

    Удалите эти записи реестра:

    • HKEY_USERS\\Software\Microsoft\Windows\Shell\Associations\FileAssociationsUpdateVersion
    • HKEY_USERS\\Software\Microsoft\Windows\Shell\Associations\UrlAssociations
    • HKEY_USERS\\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts

    Эти записи реестра присутствуют только после запуска CopyProfile .

    Перейдите к разделу HKEY_USERS\ .

    В меню "Файл" выберите "Выгрузить куст".

    Закройте редактор реестра.

    Теперь Windows будет загружать обычные настройки приложений по умолчанию из файла oemdefaultassociations.xml при первом входе пользователя в Windows.

    Создайте файл ответов с параметром CopyProfile

    В Windows SIM создайте файл ответов с amd64_Microsoft-Windows-Shell-Setup_neutral\, добавленным к Pass 4 — Specialize, и установите для параметра CopyProfile значение True . Сохраните этот файл ответов как copyprofile.xml . Вы будете использовать этот файл ответов при запуске Sysprep.

    Настройте параметры профиля пользователя по умолчанию

    Настройте пользовательские параметры в режиме аудита, а затем обобщите установку Windows, используя файл ответов, для параметра CopyProfile которого задано значение True . Если вы устанавливаете Windows с помощью другого файла ответов, убедитесь, что в этом файле ответов нет параметра CopyProfile или каких-либо параметров, создающих дополнительные учетные записи пользователей.

    Установите Windows на эталонный компьютер и запустите его в режиме аудита. Дополнительные сведения см. в разделе Загрузка Windows в режиме аудита или при первом включении.

    Не используйте учетную запись домена для запуска компьютера. Это связано с тем, что параметр CopyProfile запускается после удаления компьютера из домена при запуске Sysprep. Таким образом, вы потеряете все настройки, которые вы настроили в домене. Если вы измените профиль пользователя по умолчанию, а затем присоедините компьютер к домену, настройки, внесенные вами в профиль пользователя по умолчанию, появятся в новых учетных записях домена.

    Настройте встроенную учетную запись администратора, установив приложения, ярлыки на рабочем столе и другие параметры.

    Количество подготовленных приложений на основе среды выполнения Windows, которые вы можете установить, ограничено. Однако вы можете создавать сценарии для установки дополнительных неподготовленных приложений. Дополнительные сведения см. в разделе Загрузка неопубликованных приложений с помощью DISM.

    После завершения настройки вставьте носитель с файлом ответов CopyProfile в эталонный компьютер. Например, вы можете скопировать файл ответов на USB-накопитель.

    На эталонном компьютере откройте командную строку с повышенными привилегиями и введите следующую команду:

    В этой команде F — это буква USB-накопителя или другого съемного носителя. Инструмент Sysprep удаляет из образа информацию, относящуюся к компьютеру, но сохраняет настроенные вами параметры профиля пользователя. Дополнительные сведения см. в разделе Sysprep (обобщение) установки Windows.

    После того как вы обобщите изображение и выключите компьютер, сделайте снимок. Для этого запустите компьютер в среде Windows PE. Используйте DISM для захвата и последующего развертывания установки Windows. Дополнительные сведения см. в разделах Создание загрузочного носителя WinPE и Создание и применение образа Windows с помощью одного файла .WIM.

    Протестируйте настройки профиля пользователя

    После развертывания настроенного образа на целевом компьютере вы можете использовать этот компьютер для проверки настроек профиля пользователя. Вы можете использовать готовый интерфейс (OOBE), чтобы протестировать взаимодействие с пользователем, или протестировать пользовательские настройки в режиме аудита.

    Приложения, основанные на среде выполнения Windows, не запускаются в режиме аудита, поскольку в этом режиме используется встроенная учетная запись администратора. Чтобы запускать приложения на основе среды выполнения Windows в режиме аудита, необходимо изменить запись реестра.

    Чтобы протестировать настройки профиля пользователя после OOBE

    Установите Windows на тестовый компьютер.

    После установки Windows выполните OOBE и укажите имя компьютера, имя учетной записи пользователя и другие элементы. После завершения OOBE появится начальный экран Windows.

    Войдите на компьютер, используя учетную запись пользователя, указанную во время OOBE, и убедитесь, что ваши приложения и настройки отображаются.

    Чтобы проверить настройки профиля пользователя в режиме аудита

    Запустите компьютер в режиме аудита, используя файл ответов или нажав Ctrl+Shift+F3 при запуске OOBE. Дополнительные сведения см. в разделе Загрузка Windows в режиме аудита или при первом включении.

    Убедитесь, что ваши настройки работают должным образом. Чтобы протестировать приложения на основе среды выполнения Windows, измените реестр следующим образом:

    В командной строке с повышенными привилегиями запустите Regedit.exe.

    Перейдите к следующей записи реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\FilterAdministratorToken

    Выберите FilterAdministrationToken, а затем введите 1 в качестве данных значения.

    Выйти из системы.

    Снова войдите в систему и запустите приложения среды выполнения Windows, чтобы убедиться, что ваши настройки работают должным образом.

    После того, как вы проверите свои приложения на основе среды выполнения Windows, сбросьте запись реестра FilterAdministrationToken на 0.

    Устранение неполадок с копией профиля

    Если настройки профиля пользователя не удалось скопировать, выполните следующие действия:

    Убедитесь, что вы установили параметр CopyProfile только один раз в процессе развертывания.

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

    Убедитесь, что вы не использовали учетную запись домена.

    Убедитесь, что нет дополнительных учетных записей пользователей, кроме встроенной учетной записи администратора, которую вы настроили. Для этого выполните следующие действия:

    Выберите "Пуск" и введите "Панель управления".

    Выберите Панель управления > Добавить или удалить учетные записи пользователей.

    Выберите любую дополнительную учетную запись пользователя, кроме настроенной встроенной учетной записи администратора, а затем удалите эту учетную запись.

    Удалите все другие учетные записи пользователей на компьютере, прежде чем настраивать встроенную учетную запись администратора.

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

    Некоторые параметры можно настроить только с помощью параметра автоматической установки CopyProfile, а другие параметры можно настроить с помощью групповой политики. Для этого используйте любой из следующих способов:

    Используйте групповую политику для настройки параметров, которые сбрасываются в процессе входа нового пользователя. Вы также можете создавать сценарии для определения этих пользовательских настроек.

    Используйте настройку автоматического режима CopyProfile. Дополнительные сведения см. в Справочнике по автоматической установке Windows.

    В этой статье представлено решение проблем, возникающих при настройке профилей пользователей по умолчанию.

    Применимо к: Windows 10 — все выпуски, Windows Server 2019, Windows Server 2016
    Исходный номер базы знаний: 4056823

    Симптом

    Рассмотрите следующий сценарий:

    • Вы создаете новый профиль пользователя по умолчанию и включаете его.
    • Новый пользователь входит в систему, используя профиль, созданный на основе профиля по умолчанию на компьютере под управлением Windows 10, Windows Server 2016 или Windows Server 2019.

    В этом сценарии вы сталкиваетесь с одной или несколькими из следующих проблем:

    Значки на рабочем столе появляются долго.

    Низкая производительность при запуске или просмотре в Internet Explorer или Microsoft Edge.

    Ошибки ESENT, подобные следующим, записываются в журнал событий:

    EventLogID: 454
    TaskHostW: (pid)
    WebCacheLocal: "Сбой восстановления/восстановления базы данных из-за непредвиденной ошибки -1907"

    Полное сообщение журнала событий может также указывать на связь с другим расположением папки пользователя, например C:\Users\Administrator.

    Причина

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

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

    Разрешение

    Чтобы решить эту проблему, выполните следующие действия:

    Войдите на каждый затронутый компьютер, используя учетную запись с правами администратора, а затем удалите следующие скрытые файлы и папки, если они существуют:

    Файл: C:\Users\Default\AppData\Local\Microsoft\Windows\WebCacheLock.dat
    Папка: C:\Users\Default\AppData\Local\Microsoft\Windows\WebCache

    Для каждой учетной записи пользователя на компьютере убедитесь, что пользователь полностью вышел из системы и профиль полностью выгружен, а затем удалите следующие скрытые файлы и папки, если они существуют:

    Как просмотреть скрытые файлы

    Чтобы просмотреть скрытые файлы, выполните следующие действия:

    1. В проводнике Windows выберите "Файл", а затем "Параметры".
    2. На вкладке "Вид" выберите параметр "Показывать скрытые файлы, папки и диски".
    3. Отмените выбор параметра «Скрывать защищенные системные файлы (рекомендуется)» и нажмите «ОК».

    Мы рекомендуем повторно выбрать два параметра после устранения проблемы.

    Подробнее

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

    Управление безопасностью может быть затруднено, поскольку распространенные атаки, связанные с идентификацией, такие как распыление пароля, повтор и фишинг, становятся все более популярными. Параметры безопасности по умолчанию упрощают защиту вашей организации от этих атак с помощью предварительно настроенных параметров безопасности:

    • Обязать всех пользователей зарегистрироваться для многофакторной аутентификации Azure AD.
    • Требование к администраторам многофакторной аутентификации.
    • Блокировка устаревших протоколов аутентификации.
    • Требовать от пользователей многофакторной аутентификации, когда это необходимо.
    • Защита привилегированных действий, таких как доступ к порталу Azure.

    Почему безопасность по умолчанию?

    Цитируя Алекса Вайнерта, директора по безопасности личных данных Microsoft:

    <блочная цитата>

    . наша телеметрия говорит нам, что более 99,9 % компрометации учетных записей организации можно остановить, просто используя MFA, и что отключение устаревшей аутентификации коррелирует со снижением риска компрометации на 67 % (и полностью останавливает атаки с распылением пароля, 100 % которых происходят через устаревшая аутентификация).

    Дополнительную информацию о том, почему стали доступны параметры безопасности по умолчанию, можно найти в записи блога Алекса Вайнерта «Введение в параметры безопасности по умолчанию».

    Microsoft делает параметры безопасности по умолчанию доступными для всех. Цель состоит в том, чтобы гарантировать, что все организации имеют базовый уровень безопасности без дополнительных затрат. Вы включаете параметры безопасности по умолчанию на портале Azure. Если ваш клиент был создан 22 октября 2019 г. или позже, в нем могут быть включены параметры безопасности по умолчанию. Чтобы защитить всех наших пользователей, параметры безопасности по умолчанию распространяются на новых арендаторов при создании.

    Для кого это?

    • Организации, которые хотят повысить уровень безопасности, но не знают, как и с чего начать.
    • Организации, использующие бесплатный уровень лицензирования Azure Active Directory.

    Кому следует использовать условный доступ?

    • Если ваша организация в настоящее время использует политики условного доступа, настройки безопасности по умолчанию, вероятно, вам не подходят.
    • Если вы представляете организацию с лицензиями Azure Active Directory Premium, параметры безопасности по умолчанию, вероятно, вам не подходят.
    • Если в вашей организации предъявляются сложные требования к безопасности, вам следует рассмотреть возможность условного доступа.

    Применение политик

    Регистрация единой многофакторной аутентификации

    Все пользователи вашего клиента должны зарегистрироваться для многофакторной проверки подлинности (MFA) в форме многофакторной проверки подлинности Azure AD. У пользователей есть 14 дней, чтобы зарегистрироваться для многофакторной проверки подлинности Azure AD с помощью приложения Microsoft Authenticator. По прошествии 14 дней пользователь не может войти в систему, пока регистрация не будет завершена. 14-дневный период пользователя начинается после его первого успешного интерактивного входа после включения параметров безопасности по умолчанию.

    Защита администраторов

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

    После завершения регистрации с многофакторной идентификацией Azure AD следующие роли администраторов Azure AD потребуются для выполнения дополнительной аутентификации при каждом входе:

    • Глобальный администратор
    • Администратор приложения
    • Администратор аутентификации
    • Платежный администратор
    • Администратор облачных приложений
    • Администратор условного доступа
    • Администратор биржи
    • Администратор службы поддержки
    • Администратор паролей
    • Администратор привилегированной аутентификации
    • Администратор безопасности
    • Администратор SharePoint
    • Администратор пользователей

    Защита всех пользователей

    Мы склонны считать, что учетные записи администратора — это единственные учетные записи, для которых требуются дополнительные уровни аутентификации. Администраторы имеют широкий доступ к конфиденциальной информации и могут вносить изменения в настройки всей подписки. Но злоумышленники часто нацелены на конечных пользователей.

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

    Одним из распространенных способов улучшить защиту для всех пользователей является требование более надежной формы проверки аккаунта, например многофакторной аутентификации, для всех. После того, как пользователи завершат регистрацию многофакторной аутентификации, при необходимости им будет предложено пройти еще одну аутентификацию. Azure AD решает, когда пользователю будет предложено пройти многофакторную аутентификацию, на основе таких факторов, как расположение, устройство, роль и задача. Эта функция защищает все приложения, зарегистрированные в Azure AD, включая приложения SaaS.

    Блокировка устаревшей аутентификации

    Чтобы предоставить вашим пользователям легкий доступ к вашим облачным приложениям, Azure AD поддерживает различные протоколы проверки подлинности, включая устаревшую проверку подлинности. Устаревшая аутентификация — это термин, который относится к запросу аутентификации, сделанному:

    • Клиенты, не использующие современную проверку подлинности (например, клиент Office 2010).
    • Любой клиент, использующий старые почтовые протоколы, такие как IMAP, SMTP или POP3.

    Сегодня большинство компрометирующих попыток входа связано с устаревшей аутентификацией. Устаревшая проверка подлинности не поддерживает многофакторную проверку подлинности. Даже если в вашем каталоге включена политика многофакторной проверки подлинности, злоумышленник может пройти проверку подлинности с помощью более старого протокола и обойти многофакторную проверку подлинности.

    После того как в вашем арендаторе будут включены параметры безопасности по умолчанию, все запросы проверки подлинности, сделанные по старому протоколу, будут заблокированы. По умолчанию безопасность блокирует базовую аутентификацию Exchange Active Sync.

    Прежде чем включить параметры безопасности по умолчанию, убедитесь, что ваши администраторы не используют устаревшие протоколы аутентификации. Дополнительные сведения см. в статье Как отказаться от устаревшей проверки подлинности.

    Защита привилегированных действий

    Организации используют различные службы Azure, управляемые через API Azure Resource Manager, в том числе:

    • Портал Azure
    • Azure PowerShell
    • Azure CLI

    Использование Azure Resource Manager для управления вашими службами — действие с высоким уровнем привилегий. Azure Resource Manager может изменять конфигурации для всего клиента, например параметры службы и выставление счетов за подписку. Однофакторная аутентификация уязвима для различных атак, таких как фишинг и распыление пароля.

    Важно проверить личность пользователей, которые хотят получить доступ к Azure Resource Manager и обновить конфигурации. Вы подтверждаете их личность, запрашивая дополнительную аутентификацию, прежде чем разрешать доступ.

    После включения настроек безопасности по умолчанию в клиенте любой пользователь, получающий доступ к следующим службам, должен пройти многофакторную аутентификацию:

    • Портал Azure
    • Azure PowerShell
    • Azure CLI

    Эта политика применяется ко всем пользователям, получающим доступ к службам Azure Resource Manager, независимо от того, являются ли они администраторами или пользователями.

    У клиентов Exchange Online до 2017 г. современная проверка подлинности отключена по умолчанию. Чтобы избежать возможности зацикливания входа при проверке подлинности через этих клиентов, необходимо включить современную проверку подлинности.

    Учетная запись синхронизации Azure AD Connect исключена из настроек безопасности по умолчанию, и ей не будет предложено зарегистрироваться или выполнить многофакторную проверку подлинности. Организации не должны использовать этот аккаунт для других целей.

    Соображения по развертыванию

    Следующие дополнительные соображения связаны с развертыванием параметров безопасности по умолчанию.

    Аккаунты аварийного доступа

    В каждой организации должно быть настроено как минимум две учетные записи для экстренного доступа.

    Эти учетные записи можно использовать в тех случаях, когда нельзя использовать обычные учетные записи администратора. Например: человек с последними правами глобального администратора покинул организацию. Azure AD предотвращает удаление последней учетной записи глобального администратора, но не предотвращает удаление или отключение учетной записи в локальной среде. В любом случае организация не сможет восстановить аккаунт.

    • Назначенные права глобального администратора в Azure AD
    • Не используются ежедневно
    • Защищены длинным сложным паролем

    Учетные данные для этих учетных записей аварийного доступа должны храниться в автономном режиме в безопасном месте, например в несгораемом сейфе. Только уполномоченные лица должны иметь доступ к этим учетным данным.

    Чтобы создать учетную запись для экстренного доступа:

    1. Войдите на портал Azure как существующий глобальный администратор.
    2. Перейдите к Azure Active Directory > Пользователи.
    3. Выберите Новый пользователь.
    4. Выберите Создать пользователя.
    5. Дайте учетной записи имя пользователя.
    6. Дайте аккаунту имя.
    7. Создайте длинный и сложный пароль для учетной записи.
    8. В разделе "Роли" назначьте роль глобального администратора.
    9. В разделе "Место использования" выберите нужное место.
    10. Выберите "Создать".

    Вы можете отключить истечение срока действия пароля для этих учетных записей с помощью Azure AD PowerShell.

    Дополнительную информацию об учетных записях аварийного доступа см. в статье Управление учетными записями аварийного доступа в Azure AD.

    Методы аутентификации

    Эти бесплатные параметры безопасности по умолчанию позволяют регистрировать и использовать многофакторную аутентификацию Azure AD, используя только приложение Microsoft Authenticator с помощью уведомлений. Условный доступ позволяет использовать любой метод проверки подлинности, выбранный администратором.

    • ** Пользователи могут использовать коды подтверждения из приложения Microsoft Authenticator, но могут зарегистрироваться только с помощью параметра уведомления.
    • *** Пароли приложений доступны только в MFA для каждого пользователя с устаревшими сценариями проверки подлинности только в том случае, если они включены администраторами.

    Не отключайте методы для своей организации, если вы используете параметры безопасности по умолчанию. Отключение методов может привести к блокировке вашего клиента. Оставьте все доступные пользователям методы включенными на портале настроек службы MFA.

    Статус MFA отключен

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

    Условный доступ

    Вы можете использовать условный доступ для настройки политик, аналогичных настройкам безопасности по умолчанию, но с большей детализацией, включая исключения пользователей, которые недоступны в настройках безопасности по умолчанию. Если вы используете условный доступ и в вашей среде включены политики условного доступа, параметры безопасности по умолчанию будут вам недоступны. Дополнительную информацию о лицензировании Azure AD можно найти на странице цен на Azure AD.

    Вот пошаговые руководства по условному доступу для настройки набора политик, которые являются хорошей отправной точкой для защиты ваших личных данных:

    Включение настроек безопасности по умолчанию

    Чтобы включить параметры безопасности по умолчанию в вашем каталоге:

    1. Войдите на портал Azure как администратор безопасности, администратор условного доступа или глобальный администратор.
    2. Перейдите к Azure Active Directory >Свойства.
    3. Выберите «Управление настройками безопасности по умолчанию».
    4. Установите переключатель Включить параметры безопасности по умолчанию в положение Да.
    5. Выберите Сохранить.

    Отключение настроек безопасности по умолчанию

    Организации, решившие внедрить политики условного доступа, заменяющие параметры безопасности по умолчанию, должны отключить параметры безопасности по умолчанию.

    Используйте программы по умолчанию, чтобы настроить пользовательский интерфейс по умолчанию. Пользователи могут получить доступ к программам по умолчанию из панели управления или непосредственно из меню «Пуск». Инструмент «Установка доступа к программам и компьютерам по умолчанию» (SPAD), основной инструмент настройки по умолчанию для пользователей в Windows XP, теперь является частью программ по умолчанию.

    Этот раздел не относится к Windows 10. Способ работы ассоциаций файлов по умолчанию изменился в Windows 10. Дополнительную информацию см. в разделе Изменения в том, как Windows 10 обрабатывает приложения по умолчанию в этой публикации.

    Когда пользователь устанавливает программы по умолчанию с помощью программ по умолчанию, настройки по умолчанию применяются только к этому пользователю, а не к другим пользователям, которые могут использовать тот же компьютер. Программы по умолчанию предоставляют набор API-интерфейсов (устарел в Windows 8), которые позволяют независимым поставщикам программного обеспечения (ISV) включать свои программы или приложения в систему по умолчанию. Набор API также помогает независимым поставщикам программного обеспечения лучше управлять своим статусом по умолчанию.

    Эта тема организована следующим образом:

    Введение в программы по умолчанию и связанный с ними набор API

    После того как вы зарегистрируете приложение для функций программ по умолчанию, с помощью набора API станут доступны следующие параметры и функции:

    • Восстановить все зарегистрированные значения по умолчанию для приложения. Устарело для Windows 8.
    • Восстановить одно зарегистрированное значение по умолчанию для приложения. Устарело для Windows 8.
    • Запросить владельца определенного значения по умолчанию в одном вызове вместо поиска в реестре. Вы можете запросить стандартную ассоциацию файлов, протокол или каноническую команду меню "Пуск".
    • Запуск пользовательского интерфейса для определенного приложения, в котором пользователь может установить индивидуальные значения по умолчанию.
    • Удалить все связи для отдельных пользователей.

    Программы по умолчанию также предоставляют пользовательский интерфейс, позволяющий зарегистрировать приложение, чтобы предоставить пользователю дополнительную информацию. Например, приложение с цифровой подписью может содержать URL-адрес домашней страницы производителя.

    Использование соответствующего набора API может помочь приложению правильно работать с функцией контроля учетных записей (UAC), представленной в Windows Vista. В UAC администратор отображается в системе как обычный пользователь, поэтому администратор обычно не может писать в поддерево HKEY_LOCAL_MACHINE. Это ограничение представляет собой функцию безопасности, которая не позволяет процессу действовать в качестве администратора без ведома администратора.

    Установка программы пользователем обычно выполняется как процесс с повышенными привилегиями. Однако попытки приложения изменить поведение ассоциации по умолчанию на уровне компьютера после установки будут безуспешными. Вместо этого значения по умолчанию должны быть зарегистрированы на уровне каждого пользователя, что не позволяет нескольким пользователям перезаписывать значения по умолчанию друг друга.

    Иерархическая структура реестра для ассоциаций файлов и протоколов отдает предпочтение значениям по умолчанию для каждого пользователя, а не значениям по умолчанию на уровне компьютера. Некоторые приложения включают в свой код точки, которые временно повышают их права, когда они требуют значений по умолчанию, зарегистрированных в HKEY_LOCAL_MACHINE. Эти приложения могут иметь неожиданные результаты, если другое приложение уже зарегистрировано как приложение по умолчанию для каждого пользователя. Использование программ по умолчанию предотвращает эту двусмысленность и гарантирует ожидаемые результаты на уровне каждого пользователя.

    Регистрация приложения для использования с программами по умолчанию

    В этом разделе показаны подразделы реестра и значения, необходимые для регистрации приложения в программах по умолчанию. Он включает полный пример.

    Этот раздел содержит следующие темы:

    Программы по умолчанию требуют, чтобы каждое приложение явно регистрировало ассоциации файлов, ассоциации MIME и протоколы, для которых приложение должно быть указано как возможное по умолчанию. Вы регистрируете ассоциации, используя следующие элементы реестра, которые подробно объясняются далее в этом разделе в подразделе регистрации и описаниях значений:

    В следующем примере показаны записи реестра для вымышленного браузера Contoso, который называется WebBrowser:

    ProgID

    Приложение должно предоставить определенный ProgID. Не забудьте включить всю информацию, которая обычно записывается в общий подраздел по умолчанию для расширения. Например, вымышленный медиаплеер Litware предоставляет подраздел HKEY_LOCAL_MACHINE\SOFTWARE\Classes\LitwarePlayer11.AssocFile.MP3 для конкретного приложения. Этот подраздел включает в себя всю информацию из универсального подраздела по умолчанию HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.mp3, а также любую дополнительную информацию, которую вы хотите зарегистрировать в приложении. Это гарантирует, что если пользователь восстановит связь .mp3 с проигрывателем Litware, информация проигрывателя Litware не будет повреждена и не будет перезаписана другим приложением. (Перезапись может произойти, если подраздел по умолчанию является единственным источником этой информации.)

    Когда вы сопоставляете ProgID с расширением имени файла или протоколом, приложение может сопоставлять один к одному или один ко многим. В примере Contoso ContosoHTML указывает на один идентификатор ProgID, предоставляющий информацию о выполнении оболочки для расширений .htm, .html, .shtml, .xht и .xhtml. Поскольку для каждого протокола существует свой ProgID, при использовании протоколов вы позволяете каждому протоколу иметь свою собственную строку выполнения.

    Если ваш MIME-тип можно просмотреть в браузере, ProgID для MIME-типа должен содержать подраздел CLSID, в котором используется идентификатор класса (CLSID) соответствующего приложения. Этот CLSID используется при поиске по CLSID в базе данных MIME, которая хранится в HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MIME\Database\Content Type. Если ваш MIME-тип не предназначен для просмотра в браузере, этот шаг можно пропустить.

    Подключ регистрации и описания значений

    В этом разделе описываются отдельные подразделы реестра и значения, используемые при регистрации приложения в программах по умолчанию, как показано ранее.

    Возможности

    Подраздел Capabilities содержит всю информацию о программах по умолчанию для конкретного приложения. Заполнитель %ApplicationCapabilityPath% относится к пути реестра от HKEY_CURRENT_USER или HKEY_LOCAL_MACHINE к подразделу Capabilities приложения. Этот подраздел содержит основные значения, показанные в следующей таблице.

    < td>Скрытый
    Значение Тип Значение
    ApplicationDescription REG_SZ или REG_EXPAND_SZ Обязательно. Чтобы пользователь мог сделать обоснованный выбор назначения по умолчанию, приложение должно предоставить строку, описывающую возможности приложения. Хотя в предыдущем примере Contoso описание присваивается непосредственно значению ApplicationDescription, приложения обычно предоставляют описание в виде ресурса, встроенного в DLL-файл для облегчения локализации. Если ApplicationDescription не указан, приложение не отображается в списках пользовательского интерфейса потенциальных программ по умолчанию.
    ApplicationName REG_SZ или REG_EXPAND_SZ Необязательно. Имя, под которым программа отображается в пользовательском интерфейсе программ по умолчанию. Если эти данные не предоставляются приложением, в пользовательском интерфейсе используется имя исполняемой программы, связанной с первым зарегистрированным ProgID для приложения. ApplicationName всегда должно совпадать с именем, зарегистрированным в RegisteredApplications. Вы можете использовать ApplicationName, если хотите, чтобы разные типы приложений, например браузер и клиент электронной почты, указывали на один и тот же исполняемый файл, но отображались под разными именами.
    REG_DWORD Необязательно. Установите для этого значения значение 1, чтобы исключить приложение из списка программ в диалоговом окне «Установка программ по умолчанию». Если это значение равно 0 или отсутствует, то приложение отображается в списке нормально.

    Ассоциации файлов

    Подраздел FileAssociations содержит определенные ассоциации файлов, заявленные приложением. Эти утверждения хранятся в виде значений, по одному значению для каждого расширения. Ассоциации указывают на идентификатор ProgID для конкретного приложения, а не на общий идентификатор ProgID. Однако не обязательно, чтобы все ассоциации указывали на один и тот же ProgID.

    MIMEAssociations

    Подключ MIMEAssociations содержит определенные типы MIME, заявленные приложением. Эти утверждения хранятся в виде значений, по одному значению для каждого типа MIME. Имя значения для каждого типа MIME должно точно совпадать с именем MIME, хранящимся в базе данных MIME. Этому значению также должен быть назначен ProgID для конкретного приложения, который содержит соответствующий CLSID приложения.

    Пуск

    Подраздел меню «Пуск» связан с назначаемыми пользователем записями Интернета и электронной почты в меню «Пуск». Заявка должна быть зарегистрирована отдельно в качестве претендента на эти записи. Дополнительные сведения см. в разделе Регистрация программ с типами клиентов.

    Начиная с Windows 7, в меню "Пуск" больше нет пунктов "Интернет" и "Электронная почта". Данные реестра, связанные с записью электронной почты, по-прежнему используются для клиента MAPI по умолчанию, но данные реестра, связанные с записью Интернета, вообще не используются Windows.

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

    В подразделе Startmenu есть две записи: StartMenuInternet и Mail, которые соответствуют каноническим позициям Internet и E-mail в меню Start. Приложение присваивает StartMenuInternet или Mail значение, равное имени зарегистрированного подраздела приложения в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet или HKEY_LOCAL_MACHINE\SOFTWARE\Clients\Mail (как описано в разделе «Регистрация программ с типами клиентов»).

    В случае канонической позиции электронной почты в меню "Пуск" он представляет собой клиент MAPI по умолчанию и, следовательно, предполагается, что он может обрабатывать вызовы MAPI.В Windows 7, хотя в меню «Пуск» больше нет канонической позиции «Электронная почта», этот подраздел продолжает использоваться для клиента MAPI по умолчанию. Приложение, запрашивающее почту по умолчанию, должно зарегистрироваться в качестве обработчика MAPI в следующем подразделе:

    Если почтовый клиент не поддерживает MAPI, но все же хочет бороться за каноническую позицию электронной почты в меню "Пуск", он может зарегистрировать командную строку в следующем подразделе:

    Кроме того, в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Clients\Mail\CanonicalName добавьте значение по умолчанию с именем приложения.

    Эти записи позволяют запускать приложение из позиции электронной почты в меню "Пуск". Обратите внимание, что вызовы MAPI по-прежнему выполняются для приложения и либо не проходят к предыдущему обработчику MAPI, либо терпят неудачу, если обработчик MAPI не был установлен. Дополнительные сведения см. в разделе Регистрация программ с типами клиентов.

    Ассоциации URL

    Подключ UrlAssociations содержит определенные протоколы URL-адресов, заявленные приложением. Эти утверждения хранятся в виде значений, по одному значению для каждого протокола. Каждый протокол должен указывать на идентификатор ProgID для конкретного приложения, а не на общий идентификатор ProgID. Как упоминалось в примере с Contoso, вы можете использовать разные ProgID для каждого протокола, чтобы у каждого была своя строка выполнения.

    Зарегистрированные приложения

    Полный подраздел для RegisteredApplications:

    HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications

    Этот подраздел предоставляет операционной системе расположение в реестре сведений о программах по умолчанию для приложения. Местоположение сохраняется как значение, имя которого должно совпадать с именем приложения.

    Полный пример регистрации

    В этом примере показаны подразделы и значения, используемые при регистрации вымышленного медиаплеера Litware. В пример включены записи ProgID, чтобы показать, как все это сочетается друг с другом.

    В следующем подразделе показан идентификатор ProgID для конкретного приложения для типа MIME .mp3:

    Далее идет идентификатор ProgID для конкретного приложения, который связывает программу Litware с расширением имени файла .mp3.

    Следующие записи показывают комбинированный ProgID как для типа .mpeg MIME, так и для расширения имени файла.

    Следующие записи регистрируют программу Litware в программах по умолчанию и используют ранее зарегистрированные идентификаторы ProgID

    Наконец, в этом примере регистрируется место регистрации программ Litware по умолчанию.

    Стать браузером по умолчанию

    Регистрация в браузере должна соответствовать рекомендациям, изложенным в этом разделе. Когда браузер установлен, Windows может представить пользователю системное уведомление, с помощью которого пользователь может выбрать браузер в качестве системного по умолчанию. Это уведомление отображается, когда выполняются следующие условия:

    В следующем примере показан рекомендуемый код регистрации, который должен запустить установщик браузера после записи ключей реестра.

    SCHhangeNotify сначала уведомляет систему о том, что доступны новые варианты связи. Вызов SCHhangeNotify необходим для обеспечения правильного функционирования системных значений по умолчанию.

    Затем инструкция Sleep дает системным процессам время на обработку уведомления.

    Если пользователь закроет или проигнорирует полученное уведомление или всплывающее окно, не выбрав новый браузер по умолчанию, браузер по умолчанию останется без изменений. Обратите внимание, что пользователь также может изменить браузер по умолчанию в любое время с помощью других механизмов, включая установку пользовательских настроек по умолчанию на панели управления.

    Интерфейс программ по умолчанию

    На иллюстрациях в этом разделе показан пользовательский интерфейс для программ по умолчанию, как его видит пользователь.

    На следующем рисунке показано главное окно «Программы по умолчанию» на панели управления.

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

    Когда пользователь выбирает программу из списка, отображается значок программы и поставщик. Если URL-адрес встроен в сертификат с цифровой подписью программы, программа также может отображать URL-адрес. Программы без цифровой подписи не могут отображать URL.

    Также отображается описательный текст, который предоставляется программой во время регистрации. Этот текст обязателен. Под полем описания указано, сколько значений по умолчанию назначено программе в настоящее время из полного числа, для обработки которого она зарегистрирована.

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

    Чтобы назначить программе отдельные типы файлов и протоколы, пользователь выбирает параметр "Выбрать значения по умолчанию для этой программы", в результате чего отображается окно "Установить ассоциации" для окна программы, как показано на следующем рисунке.

    Мы рекомендуем вызывать ассоциации Set для программы с помощью IApplicationAssociationRegistrationUI::LaunchAdvancedAssociationUI.

    Рекомендации по использованию программ по умолчанию

    В этом разделе приведены рекомендации по использованию программ по умолчанию при регистрации приложений. В нем также предлагаются предложения по дизайну для создания приложения, предоставляющего пользователям оптимальную функциональность программ по умолчанию.

    Во время установки

    В дополнение к процедурам установки, обычно используемым в Windows XP, приложение для Windows Vista или более поздней версии должно зарегистрироваться в функции "Программы по умолчанию", чтобы воспользоваться ее функциями.

    Выполните следующую последовательность шагов во время установки. Шаги 1-3 соответствуют шагам, которые использовались в Windows XP; шаг 4 был новым в Windows Vista.

    1. Установите необходимые двоичные файлы.
    2. Запишите идентификаторы ProgID в раздел HKEY_LOCAL_MACHINE. Обратите внимание, что приложения должны создавать идентификаторы ProgID для своих ассоциаций.
    3. Зарегистрируйте приложение в программах по умолчанию, как описано выше в разделе Регистрация приложения для использования с программами по умолчанию.

    После установки

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

    Впечатления от первого запуска

    Когда приложение запускается пользователем в первый раз, рекомендуется, чтобы приложение отображало пользователю пользовательский интерфейс, который обычно включает следующие два варианта:

    • Примите настройки приложения по умолчанию. Этот параметр выбран по умолчанию.
    • Настройте параметры приложения по умолчанию.

    До Windows 8, если пользователь принимает настройки по умолчанию, ваше приложение вызывает IApplicationAssociationRegistration::SetAppAsDefaultAll, который преобразует все ассоциации на уровне компьютера, объявленные во время установки, в настройки для каждого пользователя для этого пользователя.

    Если пользователь решает настроить параметры, ваше приложение вызывает IApplicationAssociationRegistrationUI::LaunchAdvancedAssociationUI для отображения пользовательского интерфейса ассоциации файлов. На следующем рисунке показано это окно для вымышленного медиаплеера Litware.

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

    Вы должны использовать этот пользовательский интерфейс для своих приложений, а не создавать свой собственный. Тем самым вы экономите ресурсы, которые ранее требовались для разработки пользовательского интерфейса сопоставления файлов. Вы также гарантируете правильное сохранение связей.

    Настройте приложение для проверки того, является ли оно приложением по умолчанию

    Это больше не поддерживается в Windows 8.

    При запуске приложения обычно проверяют, установлены ли они по умолчанию. Настройте свои приложения для выполнения этой проверки, вызвав IApplicationAssociationRegistration::QueryAppIsDefault или IApplicationAssociationRegistration::QueryAppIsDefaultAll.

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

    Выбор значения по умолчанию должен осуществляться пользователем. Приложение никогда не должно восстанавливать значение по умолчанию, не спросив пользователя.

    Читайте также: