Эта статья может чрезмерно полагаться на источники, слишком тесно связанные с темой , что потенциально делает статью непроверяемой и нейтральной . Пожалуйста ( Июнь 2022 г. ) |
ClickOnce — это компонент Microsoft .NET Framework 2.0 и более поздних версий, который поддерживает развертывание приложений, созданных с помощью Windows Forms или Windows Presentation Foundation . Он похож на Java Web Start для Java Platform или Zero Install для Linux .
Основной принцип ClickOnce — облегчить развертывание приложений Windows. Кроме того, ClickOnce стремится решить три другие проблемы с традиционными моделями развертывания: сложность обновления развернутого приложения, влияние приложения на компьютер пользователя и необходимость прав администратора для установки приложений.
Приложения, развернутые ClickOnce, считаются «с низким уровнем воздействия», поскольку они устанавливаются для каждого пользователя, а не для каждой машины. Для установки этих приложений не требуются права администратора. Каждое приложение ClickOnce изолировано от других. Это означает, что одно приложение ClickOnce не может «сломать» другое. ClickOnce использует защиту доступа к коду (CAS) для предотвращения вызова системных функций приложением ClickOnce из Интернета, обеспечивая безопасность данных и клиентской системы в целом.
Модель ClickOnce поддерживает как установленные приложения (похожие на обычные приложения Windows с интеграцией меню «Пуск»), так и онлайн-приложения (приложения, размещенные в браузере, которые не устанавливаются, а только запускаются и кэшируются). Приложения ClickOnce можно развернуть на компьютере из интернет-расположения, сетевого ресурса или локального расположения файлов, например, CD-ROM.
Технология развертывания ClickOnce интегрирована в Visual Studio 2005 и более поздние версии. Она также изначально поддерживается MSBuild , технологией управления сборкой Microsoft.
Развертывание ClickOnce контролируется с помощью двух XML- файлов манифеста : манифеста развертывания и манифеста приложения. Манифесты находятся в том же формате XML, что и реализация параллельной сборки . Манифест развертывания (файл *.application) описывает модель развертывания: текущую версию, поведение обновления, идентификатор издателя вместе с цифровой подписью; этот манифест должен быть создан администраторами, которые управляют развертыванием. Манифест приложения (файл *.exe.manifest) описывает сборки приложения, зависимые библиотеки и разрешения, требуемые приложением. Этот файл должен быть создан разработчиком приложения. Чтобы запустить приложение ClickOnce, пользователь щелкает по его файлу манифеста развертывания.
В настоящее время ClickOnce запустится только в том случае, если URL-адрес манифеста развертывания открыт с помощью Internet Explorer или Edge. Если URL-адрес развертывания запущен из другого приложения, например Outlook, Word или Excel, запуск приложения будет успешным только в том случае, если Internet Explorer или Edge установлен в качестве браузера по умолчанию. [1]
Приложения ClickOnce могут быть самообновляющимися. Они могут проверять наличие новых версий по мере их появления и автоматически заменять любые обновленные файлы. В зависимости от типа установки ClickOnce предоставляет несколько вариантов обновления. Приложения можно настроить на проверку обновлений при запуске или после запуска. ClickOnce также предоставляет программные API для настройки поведения обновления. Также поддерживается обязательные обновления, что гарантирует, что вся пользовательская база может быть своевременно переведена на новую версию.
Встроенная поддержка приложений ClickOnce доступна только через Internet Explorer и Edge.
С выпуском .NET Framework 3.5 с Service Pack 1 компания Microsoft включила дополнение Firefox под названием .NET Framework Assistant , которое включило поддержку ClickOnce в Firefox 3 и более поздних версиях. [2] В первом выпуске этого расширения была проблема, из-за которой пользователи не могли удалить дополнение тем же способом, которым удаляются другие дополнения; соответствующая кнопка «Удалить» в диалоговом окне «Дополнения» была отключена. [3] 6 мая 2009 года компания Microsoft выпустила обновление, которое решало эту проблему, а также опубликовала статью поддержки, которая помогала пользователям вручную удалить этот компонент. Кроме того, более поздние версии Microsoft .NET Framework Assistant, включенные в Windows 7 и .NET Framework 4, не имели этой проблемы. [4]
В других браузерах могут быть доступны сторонние расширения, добавляющие поддержку ClickOnce, например ClickOnce для Google Chrome от Menarva Ltd.
Windows Presentation Foundation (WPF) для Firefox и .NET Framework Assistant для Firefox позволяют приложениям браузера XAML (XBAP), свободным приложениям XAML и приложениям ClickOnce работать с браузером Mozilla Firefox. [~вырезка~] .NET Framework Assistant для Firefox позволяет запускать автономные приложения ClickOnce из браузера Firefox. .NET Framework Assistant для Firefox функционирует одинаково, когда он установлен до и после браузера Firefox.
Известные проблемы [~вырезка~] Проблема 2: в помощнике .NET Framework для Firefox отключена кнопка "Удалить". В .NET Framework 3.5 SP1 помощник .NET Framework позволяет Firefox использовать технологию ClickOnce, включенную в .NET Framework. Помощник .NET Framework добавлен на уровне компьютера, чтобы его функциональность могла использоваться всеми пользователями на уровне компьютера, а не на уровне пользователя. Поэтому кнопка "Удалить" недоступна в меню дополнений Firefox, поскольку обычным пользователям не разрешено удалять компоненты на уровне компьютера.
решить эту проблему, используйте один из следующих методов: Метод 1. Загрузите обновление до .NET Framework 3.5 SP1 для .NET Framework Assistant 1.0 для Firefox [~snip~] Примечание. Это обновление включено в Windows 7 и в .NET Framework 4.0. [~snip~] Метод 2. Удалите .NET Framework Assistant для Firefox [~snip~]