我想在没有IDE的情况下在Delphi项目中手动设置程序版本。当我更改这样的*.dproj文件时:
  <VersionInfo>
    <VersionInfo Name="IncludeVerInfo">True</VersionInfo>
    <VersionInfo Name="AutoIncBuild">False</VersionInfo>
    <VersionInfo Name="MajorVer">1</VersionInfo>
    <VersionInfo Name="MinorVer">2</VersionInfo>
    <VersionInfo Name="Release">3</VersionInfo>
    <VersionInfo Name="Build">456</VersionInfo>
    <VersionInfo Name="Debug">False</VersionInfo>
    <VersionInfo Name="PreRelease">False</VersionInfo>
    <VersionInfo Name="Special">False</VersionInfo>
    <VersionInfo Name="Private">False</VersionInfo>
    <VersionInfo Name="DLL">False</VersionInfo>
    <VersionInfo Name="Locale">1049</VersionInfo>
    <VersionInfo Name="CodePage">1251</VersionInfo>
  </VersionInfo>
  <VersionInfoKeys>
    ...
    <VersionInfoKeys Name="FileVersion">1.2.3.456</VersionInfoKeys>
    ...
    <VersionInfoKeys Name="ProductVersion">1.2.3.456</VersionInfoKeys>
  </VersionInfoKeys>
然后CMD使用 MSBuild 构建项目:
call rsvars.bat
MSBuild.exe blabla.dproj /p:configuration=release
我*.exe在文件属性中获取带有空版本信息的文件
但是当我在 IDE 中设置版本并使用相同的 MSBuild 调用进行构建时,一切正常。*.exe有版本信息
问题:为什么我使用相同的*.dproj文件得到不同的结果?