Manifest aplikace ClickOnce
Manifest aplikace ClickOnce je soubor XML popisující aplikaci nasazenou pomocí ClickOnce.
Manifesty aplikace ClickOnce mají následující prvky a atributy.
Element (Prvek) | Popis | Atributy |
---|---|---|
<assembly> – element | Povinný: Prvek nejvyšší úrovně | manifestVersion |
<assemblyIdentity> – element | Povinný: Identifikuje primární sestavení aplikace ClickOnce. | name version publicKeyToken processorArchitecture language |
<trustInfo> – element | Identifikuje požadavky na zabezpečení aplikace. | Nic |
<entryPoint> – element | Povinný: Identifikuje vstupní bod kódu aplikace. | name |
<dependency> – element | Povinný: Identifikuje každou závislost potřebnou ke spuštění aplikace. Volitelně identifikuje sestavení, která je potřeba předinstalovat. | Nic |
<file> – element | Nepovinné. Identifikuje každý soubor, který aplikace nepoužívá. Může zahrnovat data izolace modelu COM (Component Object Model) přidružená k souboru. | name size group optional writeableType |
<fileAssociation> – element | Nepovinné. Identifikuje příponu souboru, která má být přidružena k aplikaci. | extension description progid defaultIcon |
Poznámky
Soubor manifestu aplikace ClickOnce identifikuje aplikaci nasazenou pomocí ClickOnce. Další informace o ClickOnce naleznete v tématu Zabezpečení a nasazení ClickOnce.
Umístění souboru
Manifest aplikace ClickOnce je specifický pro jednu verzi nasazení. Z tohoto důvodu by se měly ukládat odděleně od manifestů nasazení. Běžnou konvencí je umístit do podadresáře pojmenovaného po přidružené verzi.
Manifest aplikace musí být před nasazením vždy podepsaný. Pokud manifest aplikace změníte ručně, musíte použít mage.exe k opětovnému podepsání manifestu aplikace, aktualizaci manifestu nasazení a následné opětovné podepsání manifestu nasazení. Další informace naleznete v tématu Návod: Ruční nasazení aplikace ClickOnce.
Syntaxe názvu souboru
Název souboru manifestu aplikace ClickOnce by měl být úplný název a přípona aplikace, jak je uvedeno v elementu assemblyIdentity
, následované příponou .manifest. Například manifest aplikace, který odkazuje na aplikaci Example.exe , by použil následující syntaxi názvu souboru.
example.exe.manifest
Příklad
Následující příklad kódu ukazuje manifest aplikace pro aplikaci ClickOnce.
<?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.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:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1">
<asmv1:assemblyIdentity name="My Application Deployment.exe" version="1.0.0.0" publicKeyToken="43cb1e8e7a352766" language="neutral" processorArchitecture="x86" type="win32" />
<application />
<entryPoint>
<assemblyIdentity name="MyApplication" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
<commandLine file="MyApplication.exe" parameters="" />
</entryPoint>
<trustInfo>
<security>
<applicationRequestMinimum>
<PermissionSet Unrestricted="true" ID="Custom" SameSite="site" />
<defaultAssemblyRequest permissionSetReference="Custom" />
</applicationRequestMinimum>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!--
UAC Manifest Options
If you want to change the Windows User Account Control level replace the
requestedExecutionLevel node with one of the following.
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
If you want to utilize File and Registry Virtualization for backward
compatibility then delete the requestedExecutionLevel node.
-->
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
<dependency>
<dependentOS>
<osVersionInfo>
<os majorVersion="4" minorVersion="10" buildNumber="0" servicePackMajor="0" />
</osVersionInfo>
</dependentOS>
</dependency>
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="4.0.20506.0" />
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="MyApplication.exe" size="4096">
<assemblyIdentity name="MyApplication" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
<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>DpTW7RzS9IeT/RBSLj54vfTEzNg=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
<publisherIdentity name="CN=DOMAINCONTROLLER\UserMe" issuerKeyHash="18312a18a21b215ecf4cdb20f5a0e0b0dd263c08" /><Signature Id="StrongNameSignature" xmlns="http://www.w3.org/2000/09/xmldsig#">
...
</Signature></r:issuer></r:license></msrel:RelData></KeyInfo></Signature></asmv1:assembly>