2
我想在沒有IDE的情況下手動設置Delphi項目中的程序版本。 當我改變*.dproj
文件是這樣的:如何手動更改Delphi項目中的版本信息
<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
有版本信息
問題:我爲什麼會得到不同的resuslt具有相同*.dproj
文件?
我認爲你應該改變RC/RES文件,因爲VERSIONINFO是Windows PE-EXE資源的一部分。 我認爲DPROJ文件只包含由delphi導出到RC文件中的值。 所以你應該閱讀如果MSBuild編譯資源(AFARIR它和第一個命令調用brc.exe),如果它 - 編輯文本「ProjectName.RC」,如果它不,然後編輯二進制'ProjectName.RES' PS。請編輯您的問題,並在問題文本 –
下面添加帶有delphi版本的TAG您是否需要使用'/ t:Rebuild'強制完成重建? –
重建不會幫助 –