Especificación de una dirección URL de soporte para requisitos previos individuales en una implementación ClickOnce

Una implementación de ClickOnce puede probar varios requisitos previos que deben estar disponibles en el equipo cliente para que se ejecute la aplicación ClickOnce. Estas dependencias incluyen la versión mínima necesaria de .NET Framework, la versión del sistema operativo y los ensamblados que se deben preinstalar en la caché global de ensamblados (GAC). ClickOnce, sin embargo, no puede instalar ninguno de estos requisitos previos por sí mismo; si no se encuentra un requisito previo, simplemente detiene la instalación y muestra un cuadro de diálogo que explica por qué se produjo un error en la instalación.

Hay dos métodos para instalar los requisitos previos. Puede instalarlos mediante una aplicación de programa previo. Como alternativa, puede especificar una dirección URL de soporte técnico para requisitos previos individuales, que se muestra a los usuarios en el cuadro de diálogo si no se encuentra el requisito previo. La página a la que hace referencia esa dirección URL puede contener vínculos a instrucciones para instalar el requisito previo necesario. Si una aplicación no especifica una dirección URL de soporte técnico para un requisito previo individual, ClickOnce muestra la dirección URL de soporte técnico especificada en el manifiesto de implementación para la aplicación en su conjunto, si está definida.

Aunque Visual Studio, Mage.exe y MageUI.exe se pueden usar para generar implementaciones de ClickOnce, ninguna de estas herramientas admite directamente la especificación de una dirección URL de soporte técnico para requisitos previos individuales. En este documento se describe cómo modificar el manifiesto de aplicación de la implementación y el manifiesto de implementación para incluir estas direcciones URL de soporte técnico.

Especificación de una dirección URL de soporte técnico para requisitos previos individuales

  1. Abra el manifiesto de aplicación (el archivo .manifest) para la aplicación ClickOnce en un editor de texto.

  2. Para un requisito previo del sistema operativo, agregue el atributo supportUrl al elemento dependentOS:

     <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. Para obtener un requisito previo para una determinada versión de Common Language Runtime, agregue el atributo supportUrl a la entrada dependentAssembly que especifica la dependencia de Common Language Runtime:

      <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. Para obtener un requisito previo para un ensamblado que se debe preinstalar en la caché global de ensamblados, establezca supportUrl para el elemento dependentAssembly que especifica el ensamblado necesario:

      <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. Opcional. Para las aplicaciones que tienen como destino .NET Framework¹4, abra el manifiesto de implementación (el archivo .application) para la aplicación ClickOnce en un editor de texto.

  6. Para un requisito previo de .NET Framework 4, agregue el atributo supportUrl al elemento compatibleFrameworks:

    <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. Una vez que haya modificado manualmente el manifiesto de aplicación, debe volver a firmar el manifiesto de aplicación mediante el certificado digital y, a continuación, actualizar y volver a firmar el manifiesto de implementación. Use las herramientas del SDK de Mage.exe o MageUI.exe para realizar esta tarea, ya que la regeneración de estos archivos mediante Visual Studio borra los cambios manuales. Para obtener más información sobre el uso de Mage.exe para volver a firmar los manifiestos, consulte Cómo: Volver a firmar manifiestos de aplicación e implementación.

seguridad en .NET Framework

La dirección URL de soporte técnico no se muestra en el cuadro de diálogo si la aplicación está marcada para ejecutarse en confianza parcial.