ClickOnce: Развертывание и обновление приложений .NET Framework
ClickOnce
Развертывание приложений Windows стало проще с ClickOnce! Узнайте, как легко устанавливать, обновлять и удалять приложения .NET Framework без прав администратора.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
ClickOnce — это компонент Microsoft .NET Framework 2.0 и более поздних версий, поддерживающий развертывание приложений, разработанных с использованием Windows Forms или Windows Presentation Foundation. Он аналогичен Java Web Start для платформы Java или Zero Install для Linux.
ClickOnce is a component of Microsoft NET Framework 2.0 and later, and supports deploying applications made with Windows Forms or Windows Presentation Foundation. It is similar to Java Web Start for the Java Platform or Zero Install for Linux.
Описание
Основной принцип ClickOnce заключается в упрощении развертывания приложений Windows. Кроме того, ClickOnce призван решить три другие проблемы, связанные с традиционными моделями развертывания: сложность обновления установленного приложения, влияние приложения на компьютер пользователя и необходимость прав администратора для установки приложений. Приложения, развернутые с помощью ClickOnce, считаются "минимально влияющими", поскольку они устанавливаются для конкретного пользователя, а не для всего компьютера. Для установки этих приложений не требуются права администратора. Каждое приложение ClickOnce изолировано от других, что означает, что одно приложение ClickOnce не может вызвать сбой в работе другого. ClickOnce использует механизм Code Access Security (CAS) для предотвращения вызова системных функций приложением ClickOnce из сети, обеспечивая тем самым безопасность данных и клиентской системы в целом.
The core principle of ClickOnce is to ease the deployment of Windows applications. In addition, ClickOnce aims to solve three other problems with conventional deployment models: the difficulty in updating a deployed application, the impact of an application on the user's computer, and the need for administrator permissions to install applications. ClickOnce deployed applications are considered "low impact", in that they are installed per user, not per machine. Administrator privileges are not required to install these applications. Each ClickOnce application is isolated from the others. This means one ClickOnce application is not able to "break" another. ClickOnce employs Code Access Security (CAS) to prevent system functions being called by a ClickOnce application from the web, ensuring the security of data and the client system in general.
Приложения
Модель ClickOnce поддерживает как устанавливаемые приложения (аналогичные традиционным приложениям Windows с интеграцией в меню "Пуск"), так и онлайн-приложения (приложения, работающие в браузере, которые не устанавливаются, а запускаются и кэшируются). Приложения ClickOnce можно развернуть на компьютере из интернет-расположения, сетевой папки или локального расположения файлов, например, с CD-ROM. Технология развертывания ClickOnce была интегрирована в Visual Studio 2005 и последующих версий. Она также поддерживается MSBuild, системой управления сборкой Microsoft.
The ClickOnce model supports both installed applications (akin to conventional Windows applications with Start Menu integration) and online applications (browser hosted applications that are not installed, only run and cached). ClickOnce applications can be deployed to a computer from an internet location, a network share, or a local file location such as a CD ROM. The ClickOnce deployment technology has been integrated into Visual Studio 2005 and later. It is also natively supported by MSBuild, Microsoft's build management technology.
Манифесты
Развертывание ClickOnce контролируется с помощью двух файлов манифеста XML: манифеста развертывания и манифеста приложения. Манифесты имеют тот же формат XML, что и реализация параллельных сборок. Манифест развертывания (*.application файл) описывает модель развертывания: текущую версию, поведение при обновлении, идентификацию издателя и цифровую подпись; этот манифест предназначен для создания администраторами, отвечающими за развертывание. Манифест приложения (*.exe.manifest файл) описывает сборки приложения, зависимые библиотеки и необходимые приложению разрешения. Этот файл предназначен для создания разработчиком приложения. Для запуска приложения ClickOnce пользователь нажимает на файл манифеста развертывания. В настоящее время ClickOnce запускается только в том случае, если URL-адрес манифеста развертывания открыт в Internet Explorer или Edge. Если URL развертывания запускается из другого приложения, например Outlook, Word или Excel, запуск приложения будет успешным только в том случае, если Internet Explorer или Edge установлены в качестве браузера по умолчанию.
A ClickOnce deployment is controlled through the use of two XML manifest files: a deployment manifest and an application manifest. The manifests are in the same XML format as the side by side assembly implementation. The deployment manifest (*. application file) describes the deployment model: the current version, update behavior, publisher identity along with a digital signature; this manifest is intended to be authored by administrators who handle deployment. The application manifest (*. exe. manifest file) describes the application assemblies, dependent libraries, and permissions required by the application. This file is intended to be authored by the application developer. In order to launch a ClickOnce application, a user clicks on its deployment manifest file. Currently, ClickOnce will only launch if the URL to the deployment manifest is opened using Internet Explorer or Edge. If the deployment URL is launched from another application such as Outlook, Word, or Excel, the application launch will only be successful if Internet Explorer or Edge is set as the default browser.
Обновления
Приложения ClickOnce могут автоматически обновляться. Они могут проверять наличие новых версий по мере их выпуска и автоматически заменять обновленные файлы. В зависимости от типа установки, ClickOnce предлагает несколько вариантов обновления. Приложения можно настроить на проверку обновлений при запуске или после запуска. ClickOnce также предоставляет программные API для настройки процесса обновления. Поддерживаются и принудительные обновления, обеспечивающие своевременный переход всей пользовательской базы на новую версию.
ClickOnce applications can be self updating. They can check for newer versions as they become available and automatically replace any updated files. Depending on the installation type, ClickOnce presents several update options. Applications can be configured to check for updates on startup or after startup. ClickOnce also exposes programmatic APIs to customize update behavior. There is also support for mandatory updates, ensuring that the entire user base can be moved to a new version in a timely manner.
Поддержка браузера
Нативная поддержка приложений ClickOnce доступна только в Internet Explorer и Edge. С выпуском .NET Framework 3.5 с пакетом обновления 1, Microsoft включила в Firefox дополнение под названием .NET Framework Assistant, которое обеспечило поддержку ClickOnce в Firefox 3 и более поздних версиях. Первая версия этого расширения содержала проблему, из-за которой пользователи не могли удалить дополнение стандартным способом, как и другие дополнения; соответствующая кнопка "Удалить" в диалоговом окне "Дополнения" была неактивна. 6 мая 2009 года Microsoft выпустила обновление, устраняющее эту проблему, и опубликовала статью поддержки, помогающую пользователям вручную удалить этот компонент. Кроме того, более поздние версии .NET Framework Assistant, поставляемые с Windows 7 и .NET Framework 4, не содержали этой проблемы. Для других браузеров могут быть доступны сторонние расширения, добавляющие поддержку ClickOnce, например, ClickOnce для Google Chrome от Menarva Ltd.
Native support for ClickOnce applications is only available via Internet Explorer and Edge. With the release of NET Framework 3.5 with Service Pack 1, Microsoft included a Firefox add on called NET Framework Assistant that enabled ClickOnce support in Firefox 3 and later. The first release of this extension had a problem that prevented users from uninstalling the add on in the same manner that other add ons are uninstalled; the corresponding Uninstall button in the Add ons dialog box was disabled. On 6 May 2009, Microsoft released an update that addressed this problem and also published a support article that helped users manually remove this component. In addition, the later versions of Microsoft NET Framework Assistant included with Windows 7 and NET Framework 4 did not have this issue. Other browsers may have third party extensions available that add ClickOnce support such as Menarva Ltd's ClickOnce for Google Chrome.