相关疑难解决方法(0)

如何从assemblyInfo.cs中读取assemblyversion?

Hii,还有很多其他人已经发布过这么多关于此问题的问题.但这里的情况有所不同.

我需要提取前三个数字即.$(major).$(Minor).$(Build)从版本号.我怎么能这样做??我试过AssemblyInfoTask..but那个任务只是为了覆盖版本号.不提取版本号.

我需要提取前三个数字并将它们分配给某个属性.以供进一步使用.

好吧,我可以使用FileUpdatetask.like 覆盖它们::

<FileUpdate 
    Files="@(AssemblyFile)" 
    Regex='(\d+)\.(\d+)\.(\d+)\.(\d+)' 
    ReplacementText='$1.$2.$3.$(Revision)'>
</FileUpdate>
Run Code Online (Sandbox Code Playgroud)

现在我怎么能用他们的价值呢.$1,$2,$3分配给属性.???

感谢名单.

msbuild installer windows-installer

16
推荐指数
4
解决办法
1万
查看次数

如何在夜间构建期间自动设置装配版本?

我们有一个每晚构建过程,自动版本化所有C++项目.这是它的工作原理.有一个通用的头文件VersionNumber.h,具有特定#define的版本号.nighly build检查此文件,增加后面的整数#define并将其检入.所有Visual C++项目#include都标题到其资源文件中并使用该定义来指定版本(版本很像1.0.3.ThatNumber).

到现在为止还挺好.现在,我想对在同一日常构建中构建的C#类库具有相同的功能.目前他们都有

[assembly: AssemblyVersion("1.0.*")]
Run Code Online (Sandbox Code Playgroud)

在AssemblyInfo.cs文件和库中最终得到 1.0.HorribleNumber.AnotherHorribleNumber得到版本,这两个数字与C++项目使用的数字无关.

如何以最小的努力在我的C#项目中使用相同的清除自动版本编号?

.net c# versioning build nightly-build

13
推荐指数
1
解决办法
1万
查看次数

匹配版本号部分与正则表达式

我正在尝试使用C#正则表达式匹配版本号(Major.Minor.Build.Revision)的各个部分.但是,我对编写Regex很新,甚至使用Expresso也证明有点困难.现在,我有这个:

(?<Major>\d*)\.(?<Minor>\d*)\.(?<Build>\d*)\.(?<Revision>\d*)
Run Code Online (Sandbox Code Playgroud)

这有效,但要求版本号的每个部分都存在.我想做的还是匹配版本,如:

2.13
Run Code Online (Sandbox Code Playgroud)

在这种情况下,构建和修订组需要返回空值.如果我认为这一切都错了,请随意提出一个更好的方法.

c# regex version

8
推荐指数
1
解决办法
6601
查看次数

msbuild任务读取DLL的AssemblyFileVersion

我需要阅读AssemblyFileVersiondll而不仅仅是Version.我试过了:

<Target Name="RetrieveIdentities">
    <GetAssemblyIdentity AssemblyFiles="some.dll">
        <Output
            TaskParameter="Assemblies"
            ItemName="MyAssemblyIdentities"/>
    </GetAssemblyIdentity>
    <Message Text="%(MyAssemblyIdentities.FileVersion)" />
</Target>
Run Code Online (Sandbox Code Playgroud)

该脚本运行但不输出任何内容.如果我改变FileVersionVersion它正确输出AssemblyVersion.我如何AssemblyFileVersion使用我的脚本?

versioning msbuild

8
推荐指数
2
解决办法
3495
查看次数