<dependency> Elemento (implantação deClickOnce )
Identifica a versão do aplicativo para instalar e o local do manifesto do aplicativo.
<dependency>
<dependentAssembly
preRequisite
visible
dependencyType
codeBase
size
>
<assemblyIdentity
name
version
publicKeyToken
processorArchitecture
language
type
/>
<hash>
<dsig:Transforms>
<dsig:Transform
Algorithm
/>
</dsig:Transforms>
<dsig:DigestMethod />
<dsig:DigestValue>
</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
Elementos e atributos
O dependency elemento é necessário. Ele tem sem atributos. Um manifesto de implantação pode ter vários dependency elementos.
O dependency elemento geralmente expressa as dependências do aplicativo principal em assemblies contidos em um ClickOnce aplicativo. Se seu aplicativo Main.exe consome um assembly chamado DotNetAssembly.dll, o assembly deve estar listado em uma seção de dependência. Dependência, no entanto, pode também express outros tipos de dependências, como dependências em uma versão específica do common language runtime, um assembly no cache global de assemblies (GAC) ou em um objeto COM. Porque é uma tecnologia de implantação, ClickOnce não pode iniciar download e instalação desses tipos de dependências, mas ele não impede a execução do aplicativo se um ou mais das dependências especificadas não existe.
dependentAssembly
Obrigatório. Esse elemento contém o assemblyIdentity elemento. A tabela a seguir mostra os atributos de dependentAssembly oferece suporte.
Atributo |
Descrição |
---|---|
preRequisite |
Opcional. Especifica que este assembly já deve existir no GAC. Os valores válidos são true e false. Se truee o assembly especificado não existe no GAC, a execução do aplicativo falha. |
visible |
Opcional. Identifica a identidade do aplicativo de nível superior, incluindo suas dependências. Usado internamente pelo ClickOnce para gerenciar o armazenamento do aplicativo e ativação. |
dependencyType |
Obrigatório. A relação entre essa dependência e o aplicativo. Os valores válidos são:
|
codebase |
Opcional. O caminho completo para o manifesto do aplicativo. |
size |
Opcional. O tamanho do manifesto do aplicativo, em bytes. |
assemblyIdentity
Obrigatório. Este elemento é filho de dependentAssembly elemento. O conteúdo de assemblyIdentity deve ser a mesma descrita no ClickOnce manifesto de aplicativo. A tabela a seguir mostra os atributos da assemblyIdentity elemento.
Atributo |
Descrição |
---|---|
Name |
Obrigatório. Identifica o nome do aplicativo. |
Version |
Obrigatório. Especifica o número de versão do aplicativo, no seguinte formato: Major.Minor.Build.Revision |
publicKeyToken |
Obrigatório. Especifica uma seqüência hexadecimal de 16 caracteres que representa os últimos 8 bytes de hash SHA-1 da chave pública na qual o aplicativo ou assembly é assinado. A chave pública usada para assinar deve ser de 2048 bits ou superior. |
processorArchitecture |
Obrigatório. Especifica o microprocessador. Os valores válidos são x86 para Windows de 32 bits e IA64 para Windows de 64 bits. |
Language |
Opcional. Identifica os códigos de idioma de duas partes do assembly. Por exemplo, EN-US, que significa o inglês (EUA). O padrão é neutra. Esse elemento se encontra o asmv2 namespace. |
type |
Opcional. Para versões anteriores a compatibilidade com Windows lado a lado instalar tecnologia. O único valor permitido é win32. |
hash
O hash elemento é um filho opcional de file elemento. O hash elemento tem sem atributos.
ClickOnceusa um hash de algoritmo de todos os arquivos em um aplicativo como uma verificação de segurança para garantir que nenhum dos arquivos foram alterados após a implantação. Se a hash elemento não está incluído, essa verificação não será executada. Portanto, omitindo o hash elemento não é recomendado.
DSIG:TRANSFORMS
O dsig:Transforms elemento é um filho obrigatório a hash elemento. O dsig:Transforms elemento tem sem atributos.
DSIG:transform
O dsig:Transform elemento é um filho obrigatório a dsig:Transforms elemento. A tabela a seguir mostra os atributos da dsig:Transform elemento.
Atributo |
Descrição |
---|---|
Algorithm |
O algoritmo usado para calcular a compilação para este arquivo. Atualmente o único valor usado pelo ClickOnce é urn: schemas-microsoft-com:HashTransforms.Identity. |
DSIG:DigestMethod
O dsig:DigestMethod elemento é um filho obrigatório a hash elemento. A tabela a seguir mostra os atributos da dsig:DigestMethod elemento.
Atributo |
Descrição |
---|---|
Algorithm |
O algoritmo usado para calcular a compilação para este arquivo. Atualmente o único valor usado pelo ClickOnce é http://www.w3.org/2000/09/xmldsig#sha1. |
DSIG:DigestValue
O dsig:DigestValue elemento é um filho obrigatório a hash elemento. O dsig:DigestValue elemento tem sem atributos. Seu valor de texto é o hash computado para o arquivo especificado.
Comentários
Manifestos de implantação geralmente têm um único assemblyIdentity elemento que identifica o nome e versão do manifesto de aplicativo.
Exemplo
O seguinte código exemplo mostra um dependency elemento em um ClickOnce manifesto de implantação.
<!-- Identify the assembly dependencies -->
<dependency>
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="MyApplication.exe" size="16384">
<assemblyIdentity name="MyApplication" version="0.0.0.0" cultural="neutral" processorArchitecture="msil" />
<hash>
<dsig:Transforms>
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<dsig:DigestValue>YzXYZJAvj9pgAG3y8jXUjC7AtHg=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
O exemplo de código a seguir especifica uma dependência em um assembly já instalado no GAC.
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="GACAssembly" version="1.0.0.0" language="neutral" processorArchitecture="msil" />
</dependentAssembly>
</dependency>
O exemplo de código a seguir especifica uma dependência em uma versão específica do common language runtime.
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="2.0.50215.0" />
</dependentAssembly>
</dependency>
O exemplo de código a seguir especifica uma dependência do sistema operacional.
<dependency>
<dependentOS supportUrl="https://www.microsoft.com" description="Microsoft Windows Operating System">
<osVersionInfo>
<os majorVersion="4" minorVersion="10" />
</osVersionInfo>
</dependentOS>
</dependency>