1

我在通过脚本构建 Visual Studio 项目方面是全新的,所以如果你觉得我对这个过程的理解不正确,请随时纠正我。

我有一个 Visual Studio 解决方案,它由一个 Wpf.exe 项目和几个类库项目组成。

目前我正在.sln使用下面的脚本成功构建文件

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

当前,该Wpf.exe文件获取Wpf 项目的属性中 File Version指定Product Version 1.0.0.0的默认值。Publish -> Publish Version在此处输入图像描述

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

我有一个environment variable包含Product Versionand的内容File Version,基本上我想将 Product Version 和 File Version 的值设置为等于我的环境变量。

4

2 回答 2

2

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

[assembly: AssemblyInformationalVersion("1.2.3.4")]

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

于 2011-05-30T16:16:26.237 回答
1

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

更新:

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

<ItemGroup>
<Tokens Include="ApplicationVersion">
      <ReplacementValue>$(ApplicationVersion)</ReplacementValue>
      <Visible>false</Visible>
</Tokens>
 </ItemGroup>
于 2011-05-30T14:23:59.223 回答