Манифест развертывания ClickOnce
Манифест развертывания — это файл XML, описывающий развертывание ClickOnce, включая идентификацию текущей версии развертываемого приложения ClickOnce.
Манифесты развертывания имеют следующие элементы и атрибуты.
Элемент |
Описание |
Атрибуты |
---|---|---|
Обязательный. Элемент верхнего уровня. |
manifestVersion |
|
Обязательный. Определение манифеста приложения для приложения ClickOnce. |
name version publicKeyToken processorArchitecture culture |
|
Обязательный. Определение сведений о приложении, используемом для создания оболочки присутствия и элемента Установка и удаление программ в панели управления. |
publisher product supportUrl |
|
Необязательный. Определение атрибутов, используемых для развертывания обновлений и доступа к системе. |
install minimumRequiredVersion mapFileExtensions disallowUrlActivation trustUrlParameters |
|
Обязательный. Указывает версии платформы .NET Framework, в которых приложение может устанавливаться и запускаться. |
SupportUrl |
|
Обязательный. Определение версии приложения, устанавливаемого для развертывания, и расположения манифеста приложения. |
preRequisite visible dependencyType codebase size |
|
Требуется для подписанных манифестов. Содержит сведения об издателе, подписавшем этот манифест развертывания. |
Name issuerKeyHash |
|
Необязательный. Содержит сведения, необходимые для цифровой подписи данного манифеста развертывания. |
Нет |
|
Необязательный. Задает универсальный код ресурса (URI) для отображения в случае ошибки. |
URI |
Заметки
Файл манифеста развертывания определяет развертывание приложения ClickOnce, включая текущую версию и другие настройки развертывания. Он ссылается на манифест приложения, описывающий текущую версию приложения и все файлы, задействованные в развертывании.
Дополнительные сведения см. в разделе Развертывание и безопасность технологии ClickOnce.
Расположение файлов
Файл манифеста развертывания ссылается на правильный манифест приложения для текущей версии приложения. Когда станет доступна новая версия развертывания приложения, необходимо обновить манифест развертывания ссылкой на новый манифест приложения.
Файл манифеста развертывания должен иметь строгое имя и может также содержать сертификаты для проверки издателя.
Синтаксис имени файла
Имя файла манифеста развертывания должно заканчиваться расширением .application.
Примеры
В следующем примере кода показан манифест развертывания.
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd"
manifestVersion="1.0"
xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"
xmlns:dsig=http://www.w3.org/2000/09/xmldsig#
xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1"
xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2"
xmlns="urn:schemas-microsoft-com:asm.v2"
xmlns:asmv1="urn:schemas-microsoft-com:asm.v1"
xmlns:asmv2="urn:schemas-microsoft-com:asm.v2"
xmlns:xrml="urn:mpeg:mpeg21:2003:01-REL-R-NS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity
name="My Application Deployment.app"
version="1.0.0.0"
publicKeyToken="43cb1e8e7a352766"
language="neutral"
processorArchitecture="x86"
xmlns="urn:schemas-microsoft-com:asm.v1" />
<description
asmv2:publisher="My Company Name"
asmv2:product="My Application"
xmlns="urn:schemas-microsoft-com:asm.v1" />
<deployment install="true">
<subscription>
<update>
<expiration maximumAge="0" unit="days" />
</update>
</subscription>
<deploymentProvider codebase="\\myServer\sampleDeployment\MyApplicationDeployment.application" />
</deployment>
<compatibleFrameworks xmlns="urn:schemas-microsoft-com:clickonce.v2">
<framework targetVersion="4.0" profile="Full" supportedRuntime="4.0.20506" />
<framework targetVersion="4.0" profile="Client" supportedRuntime="4.0.20506" />
</compatibleFrameworks>
<dependency>
<dependentAssembly
dependencyType="install"
codebase="1.0.0.0\My Application Deployment.exe.manifest"
size="6756">
<assemblyIdentity
name="My Application Deployment.exe"
version="1.0.0.0"
publicKeyToken="43cb1e8e7a352766"
language="neutral"
processorArchitecture="x86"
type="win32" />
<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>E506x9FwNauks7UjQywmzgtd3FE=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
<publisherIdentity name="CN=DOMAIN\MyUsername" issuerKeyHash="18312a18a21b215ecf4cdb20f5a0e0b0dd263c08" /><Signature Id="StrongNameSignature" xmlns="http://www.w3.org/2000/09/xmldsig#">
…
</Signature></asmv1:assembly>