Вопрос: Нужно ли изменять атрибут версии assemblyIdentity в файле манифеста?


В следующем манифесте необходимо изменить version атрибут assemblyIdentity элемент, если версия сборки указана в проекте (или, в моем случае, установлена ​​как часть задачи MSBuild)?

В соответствии с эта страница Microsoft Connect , Это выглядит  как номер версии проекта, переопределяет номер версии манифеста. Пожалуйста, поправьте меня, если я ошибаюсь ...

<?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>

Помоги мне, Джон Скит, ты моя единственная надежда ...  :)


13


источник


Ответы:


Точкой сборки является уникальная идентификация вашего приложения для Windows и его компонентов. Это похоже на то, как .NET использует filename + version + ID, сгенерированную + целевую архитектуру процессора, для уникальной идентификации сборок.

Если вы решите не изменять его, то компоненты Windows могут не видеть новые версии вашего приложения как уникально отличные от старых версий.

Дополнительная информация о Манифест приложений MSDN ,


6