Необходимо ли изменить атрибут версии assemblyIdentity в файле манифеста? - PullRequest
15 голосов
/ 29 июля 2010

В следующем манифесте необходимо изменить атрибут 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>

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

1 Ответ

6 голосов
/ 06 ноября 2010

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

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

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

...