如何在Devenv中指定发布版本?

时间:2011-05-30 12:07:23

标签: c# build devenv version-numbering

我是通过脚本构建Visual Studio项目的新手,如果您觉得我对该过程的理解不正确,请随时纠正我。

我有一个visual studio解决方案,它包含一个Wpf.exe项目和几个类库项目。

目前,我正在使用下面的脚本

成功构建.sln文件

"%VS_IDE_DIR%devenv.com" "...Solution-File-Path.sln" /rebuild Release /useenv

目前Wpf.exe文件获取File VersionProduct Version 1.0.0.0,这是Wpf项目的Publish -> Publish Version属性中指定的默认值。 enter image description here

我想以某种方式通过我的脚本设置File VersionProduct Version。我怎样才能做到这一点?

我有environment variable,其中包含Product VersionFile Version,基本上我想将产品版本和文件版本的值设置为等于我的环境变量。

2 个答案:

答案 0 :(得分:2)

有一种简单的方法可以做到这一点。在WPF项目中,打开“属性”节点,然后双击AssemblyInfo.cs。 [assembly:AssemblyFileVersion]属性设置文件版本号。添加此项以设置产品版本号:

[assembly: AssemblyInformationalVersion("1.2.3.4")]

从命令行执行此操作仅在技术上可行。您必须创建本机文件版本资源并使用rc.exe进行编译。并使用Project + Properties,Resource file选项告诉编译器使用rc.exe生成的自定义.res文件。您需要脚本来更新版本资源。考虑到编辑AssemblyInfo.cs是多么容易,我建议你不要打扰。

答案 1 :(得分:1)

您可以在运行ms build命令时添加/p:ApplicationVersion=1.0.0.1。指定的版本号将是项目在编译exe时将使用的版本号。

更新

我已将项目标记中的以下xml代码添加到我的解决方案的项目文件中。

<ItemGroup>
<Tokens Include="ApplicationVersion">
      <ReplacementValue>$(ApplicationVersion)</ReplacementValue>
      <Visible>false</Visible>
</Tokens>
 </ItemGroup>