<элемент развертывания> (развертывание ClickOnce)
Идентифицирует атрибуты, используемые для развертывания обновлений и доступа к системе.
Синтаксис
<deployment
install
minimumRequiredVersion
mapFileExtensions
disallowUrlActivation
trustUrlParameters
>
<subscription>
<update>
<beforeApplicationStartup/>
<expiration
maximumAge
unit
/>
</update>
</subscription>
<deploymentProvider
codebase
/>
</deployment>
Элементы и атрибуты
Элемент deployment
является обязательным и находится в пространстве имен urn:schemas-microsoft-com:asm.v2
. Элемент имеет перечисленные ниже атрибуты.
Атрибут | Description |
---|---|
install |
Обязательное. Указывает, определяет ли это приложение присутствие в меню "Пуск" Windows и в приложении панель управления "Добавить или удалить программы". Допустимые значения — true и false . Если false , ClickOnce всегда будет запускать последнюю версию этого приложения из сети и не распознает subscription элемент. |
minimumRequiredVersion |
Необязательно. Указывает минимальную версию этого приложения, которая может работать на клиенте. Если номер версии приложения меньше номера версии, указанного в манифесте развертывания, приложение не будет выполняться. Номера версий должны быть указаны в формате N.N.N.N , где N является целое число без знака. install Если атрибут имеет значениеfalse , minimumRequiredVersion не должно быть задано. |
mapFileExtensions |
Необязательно. По умолчанию — false . Если true все файлы в развертывании должны иметь расширение .deploy. ClickOnce отключит это расширение, как только он скачивает их с веб-сервера. При публикации приложения с помощью Visual Studio он автоматически добавляет это расширение ко всем файлам. Этот параметр позволяет загружать все файлы в развертывании ClickOnce с веб-сервера, который блокирует передачу файлов, заканчивающихся небезопасными расширениями, такими как .exe. |
disallowUrlActivation |
Необязательно. По умолчанию — false . Если true параметр не позволяет запустить установленное приложение, щелкнув URL-адрес или введя URL-адрес в браузер. install Если атрибут отсутствует, этот атрибут игнорируется. |
trustURLParameters |
Необязательно. По умолчанию — false . Если true url-адрес позволяет содержать параметры строки запроса, передаваемые в приложение, так же, как аргументы командной строки, передаются в приложение командной строки. Дополнительные сведения см. в разделе "Практическое руководство. Получение сведений о строке запроса" в приложении ClickOnce в Интернете.disallowUrlActivation Если атрибут имеет значение true , trustUrlParameters необходимо исключить из манифеста или явно задать значение false . |
Элемент deployment
также содержит следующие дочерние элементы.
Подписка
Необязательно. Содержит update
элемент. У элемента subscription
нет атрибутов. subscription
Если элемент не существует, приложение ClickOnce никогда не будет проверять наличие обновлений. install
Если атрибут deployment
элемента равенfalse
, subscription
элемент игнорируется, так как приложение ClickOnce, запущенное из сети, всегда использует последнюю версию.
обновить
Обязательный. Этот элемент является дочерним subscription
элементом элемента и содержит beforeApplicationStartup
элемент или expiration
элемент. beforeApplicationStartup
и в одном манифесте развертывания не может быть указано и то, и другое expiration
.
У элемента update
нет атрибутов.
beforeApplicationStartup
Необязательно. Этот элемент является дочерним update
элементом элемента и не имеет атрибутов. beforeApplicationStartup
Если элемент существует, приложение будет заблокировано при проверка ClickOnce для обновлений, если клиент находится в сети. Если этот элемент не существует, ClickOnce сначала будет проверять наличие обновлений на основе значений expiration
, указанных для элемента. beforeApplicationStartup
и в одном манифесте развертывания не может быть указано и то, и другое expiration
.
expiration
Необязательно. Этот элемент является дочерним элементом update
элемента и не имеет дочерних элементов. beforeApplicationStartup
и в одном манифесте развертывания не может быть указано и то, и другое expiration
. При обнаружении проверка обновления и обнаружена обновленная версия, новые версии кэшируются во время выполнения существующей версии. Затем новая версия устанавливается на следующем запуске приложения ClickOnce.
Элемент expiration
поддерживает следующие атрибуты.
Атрибут | Description |
---|---|
maximumAge |
Обязательное. Определяет, как старое текущее обновление должно стать до того, как приложение выполнит обновление проверка. Единица времени определяется атрибутом unit . |
unit |
Обязательный. Определяет единицу времени для maximumAge . Допустимые единицы: hours , days и weeks . |
deploymentProvider
Для платформа .NET Framework 2.0 этот элемент требуется, если манифест развертывания содержит subscription
раздел. Для платформа .NET Framework 3.5 и более поздних версий этот элемент является необязательным, и по умолчанию используется путь к серверу и файлу, в котором обнаружен манифест развертывания.
Этот элемент является дочерним по отношению к элементу deployment
и содержит следующий атрибут.
Атрибут | Description |
---|---|
codebase |
Обязательное. Определяет расположение в виде универсального идентификатора ресурса (URI) манифеста развертывания, используемого для обновления приложения ClickOnce. Этот элемент также позволяет переадресовывание расположений обновлений для установок на основе cd. Должен быть допустимым универсальным кодом ресурса (URI). |
Замечания
Вы можете настроить приложение ClickOnce для проверки обновлений при запуске, проверки обновлений после запуска или никогда не проверка обновлений. Чтобы проверить наличие обновлений при запуске, убедитесь, что beforeApplicationStartup
элемент существует в элементе update
. Чтобы проверить наличие обновлений после запуска, убедитесь, что expiration
элемент существует в элементе update
и предоставляется интервалы обновления.
Чтобы отключить проверка обновления, удалите subscription
элемент. Если вы указываете в манифесте развертывания, чтобы никогда не проверять наличие обновлений, вы по-прежнему можете вручную проверка обновлений CheckForUpdate с помощью метода.
Примечание.
Класс ApplicationDeployment и API в System.Deployment.Application пространстве имен не поддерживаются в .NET Core и .NET 5 и более поздних версиях. В .NET 7 поддерживается новый метод доступа к свойствам развертывания приложения. Дополнительные сведения см. в разделе "Свойства развертывания Access ClickOnce" в .NET. .NET 7 не поддерживает эквивалент методов ApplicationDeployment.
Дополнительные сведения о том, как deploymentProvider относится к обновлениям, см. в разделе "Выбор стратегии обновления ClickOnce".
Примеры
В следующем примере кода показан deployment
элемент в манифесте развертывания ClickOnce. В примере используется deploymentProvider
элемент для указания предпочтительного расположения обновления.
<deployment install="true" minimumRequiredVersion="2.0.0.0" mapFileExtension="true" trustUrlParameters="true">
<subscription>
<update>
<expiration maximumAge="6" unit="hours" />
</update>
</subscription>
<deploymentProvider codebase="http://www.adatum.com/MyApplication.application" />
</deployment>