我正在寻找一个允许我控制旧VB6项目版本的MSBuild任务/脚本?
.vbp将版本信息存储为.ini样式,但我找不到一种简单的方法来读取和写入这三个条目。
答案 0 :(得分:5)
我总是使用http://msbuildtasks.tigris.org/上的MSBuildCommunityTasks中的FileUpdate-task
您可以使用正则表达式查找模式,然后替换所需的文本。 例如:要替换assembly-info.cs中的versionnumber:
<FileUpdate Files="@(VersioningAssemblyInfoFiles)"
Regex="AssemblyFileVersion\(".*"\)\]"
ReplacementText="AssemblyFileVersion("$(VersionMajor).$(VersionMinor).$(VersionBuild).$(VersionRevision)")]" />
答案 1 :(得分:2)
我不确定它是否在任何库中实现
您可以实现调用custom task的GetPrivateProfileString。
然而,一个新颖的想法是通过MSBUILD exec调用convert the file automatically to XML,然后更容易使用msbuild解析该xml。