<элемент развертывания> (развертывание 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. Если trueurl-адрес позволяет содержать параметры строки запроса, передаваемые в приложение, так же, как аргументы командной строки, передаются в приложение командной строки. Дополнительные сведения см. в разделе "Практическое руководство. Получение сведений о строке запроса" в приложении 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>

См. также