问题描述
|
通过脚本构建Visual Studio Project完全是我的新手,如果您对过程的理解不正确,请随时纠正我。
我有一个Visual Studio解决方案,其中包括Wpf.exe项目和几个类库项目。
目前,我正在使用以下脚本成功构建“ 0”文件
\"%VS_IDE_DIR%devenv.com\" \"...solution-File-Path.sln\" /rebuild Release /useenv
当前Wpf.exe
文件获得File Version
和Product Version
1.0.0.0
,这是Wpf项目的Publish -> Publish Version
属性中指定的默认值。
我想通过脚本设置File Version
和Product Version
。我该如何实现?
我有一个environment variable
,其中包含Product Version
和File Version
,基本上我想将Product Version和File Version的值设置为等于我的环境变量。
解决方法
有一个简单的方法可以做到这一点。在WPF项目中,打开“属性”节点,然后双击AssemblyInfo.cs。 [assembly:AssemblyFileVersion]属性设置文件版本号。添加它以设置产品版本号:
[assembly: AssemblyInformationalVersion(\"1.2.3.4\")]
仅在技术上可以从命令行执行此操作。您必须创建本机文件版本资源,然后使用rc.exe进行编译。然后使用Project + Properties,Resource file选项告诉编译器使用rc.exe生成的自定义.res文件。您需要编写脚本来更新版本资源。鉴于通过编辑AssemblyInfo.cs做到这一点很容易,我建议您不要打扰。
, 您可以在运行ms build命令时添加/p:ApplicationVersion=1.0.0.1
。指定的版本号将是项目在编译exe时将使用的版本号。
更新:
我在项目标记内将以下xml代码添加到了解决方案的项目文件中。
<ItemGroup>
<Tokens Include=\"ApplicationVersion\">
<ReplacementValue>$(ApplicationVersion)</ReplacementValue>
<Visible>false</Visible>
</Tokens>
</ItemGroup>