2010-07-29 12 views
11

En el siguiente manifiesto, ¿es necesario cambiar el atributo version del elemento assemblyIdentity si la versión del ensamblado se especifica en el proyecto (o, en mi caso, se establece como parte de una tarea MSBuild)?¿Es necesario cambiar el atributo de versión de assemblyIdentity en un archivo de manifiesto?

Según this Microsoft Connect page, parece como el número de versión del proyecto anula el número de versión del manifiesto. Por favor, corríjanme si me equivoco ...

<?xml version="1.0" encoding="utf-8"?> 
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" 
       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"> 
    <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="MyApp.exe" type="win32"/> 
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> 
    <security> 
     <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3"> 
     <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> 
     </requestedPrivileges> 
    </security> 
    </trustInfo> 
</asmv1:assembly> 

Ayúdame Jon Skeet, eres mi única esperanza ... :)

Respuesta

5

El punto de montaje de la información es la identificación exclusiva su aplicación a Windows y sus componentes. Esto es similar a cómo .NET usa nombre de archivo + versión + ID generado + arco de procesador de destino para identificar ensamblajes de manera única.

Si decide no cambiarlo, es posible que los componentes de Windows no vean las versiones nuevas de su aplicación como únicas y diferentes de las versiones anteriores.

Más información sobre el Application Manifests MSDN page.

Cuestiones relacionadas