указание URL-адреса поддержки для определенных необходимых компонентов в развертывании ClickOnce

Развертывание ClickOnce может протестировать ряд предварительных требований, которые должны быть доступны на клиентском компьютере для запуска приложения ClickOnce. Эти зависимости включают необходимую минимальную версию платформа .NET Framework, версию операционной системы и все сборки, которые должны быть предварительно установлены в глобальном кэше сборок (GAC). Однако clickOnce не может установить любое из этих предварительных требований; Если предварительные требования не найдены, он просто останавливает установку и отображает диалоговое окно, объясняющее, почему установка завершилась ошибкой.

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

Хотя Visual Studio, Mage.exe и MageUI.exe можно использовать для создания развертываний ClickOnce, ни один из этих средств не поддерживает указание URL-адреса поддержки для отдельных предварительных требований. В этом документе описывается изменение манифеста приложения развертывания и манифеста развертывания для включения этих URL-адресов поддержки.

Указание URL-адреса поддержки для отдельного обязательного условия

  1. Откройте манифест приложения ( файл манифеста ) для приложения ClickOnce в текстовом редакторе.

  2. Для предварительного требования операционной системы добавьте атрибут в supportUrldependentOS элемент:

     <dependency>
        <dependentOS supportUrl="http://www.adatum.com/MyApplication/wrongOSFound.htm">
          <osVersionInfo>
            <os majorVersion="5" minorVersion="1" buildNumber="2600" servicePackMajor="0" servicePackMinor="0" />
          </osVersionInfo>
        </dependentOS>
      </dependency>
    
  3. Для выполнения определенной версии среды CLR добавьте supportUrl атрибут dependentAssembly в запись, указывающую зависимость среды CLR:

      <dependency>
        <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true" supportUrl=" http://www.adatum.com/MyApplication/wrongClrVersionFound.htm">
          <assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="4.0.30319.0" />
        </dependentAssembly>
      </dependency>
    
  4. Для предварительно установленной сборки в глобальном кэше сборок задайте supportUrl для dependentAssembly элемента, указывающего необходимую сборку:

      <dependency>
        <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true" supportUrl=" http://www.adatum.com/MyApplication/missingSampleGACAssembly.htm">
          <assemblyIdentity name="SampleGACAssembly" version="5.0.0.0" publicKeyToken="04529dfb5da245c5" processorArchitecture="msil" language="neutral" />
        </dependentAssembly>
      </dependency>
    
  5. Необязательно. Для приложений, предназначенных для платформа .NET Framework 4, откройте манифест развертывания (файл приложения) для приложения ClickOnce в текстовом редакторе.

  6. Для платформа .NET Framework 4 необходимо добавить атрибут в supportUrlcompatibleFrameworks элемент:

    <compatibleFrameworks  xmlns="urn:schemas-microsoft-com:clickonce.v2" supportUrl="http://adatum.com/MyApplication/CompatibleFrameworks.htm">
      <framework targetVersion="4.0" profile="Client" supportedRuntime="4.0.30319" />
      <framework targetVersion="4.0" profile="Full" supportedRuntime="4.0.30319" />
    </compatibleFrameworks>
    
  7. После изменения манифеста приложения вручную необходимо повторно подписать манифест приложения с помощью цифрового сертификата, а затем обновить и повторно подписать манифест развертывания. Используйте средства SDK Mage.exe или MageUI.exe для выполнения этой задачи, так как повторное создание этих файлов с помощью Visual Studio удаляет изменения вручную. Дополнительные сведения об использовании Mage.exe для повторного подписания манифестов см. в статье "Практическое руководство. Повторная регистрация манифестов приложения и развертывания".

безопасность платформы .NET Framework

URL-адрес поддержки не отображается в диалоговом окне, если приложение помечено для выполнения в частичном доверии.