如何更改安装项目版本(在 TFS 2015 [vNext build] 中)
How to change setup project version (in TFS 2015 [vNext build])
为了在 TFS 2015 中构建我的项目设置 file\msi 我使用
devenv 命令行任务:
solutionPath /build BuildConfiguration /project projectPath
我的问题是如何从该行更改 msi 版本(如果可能),例如 ... $(BuildVersion)
检查了 MSDN devenv 命令行(没有。)
谢谢
假设您想在构建期间更改 .vdproj
文件中的 ProductVersion
值。你是对的,没有命令可以直接改变它。
您需要使用 powershell 或以编程方式更改版本。这是this case中的一段代码,您可以参考:
static void Main(string[] args)
{
string setupFileName = @"<Replace the path to vdproj file>";
StreamReader reader = File.OpenText(setupFileName);
string file = string.Empty;
try
{
Regex expression = new Regex(@"(?:\""ProductCode\"" =
\""8.){([\d\w-]+)}");
Regex expression1 = new Regex(@"(?:\""UpgradeCode\"" =
\""8.){([\d\w-]+)}");
file = reader.ReadToEnd();
file = expression.Replace(file, "\"ProductCode\" = \"8:{" +
Guid.NewGuid().ToString().ToUpper() + "}");
file = expression1.Replace(file, "\"UpgradeCode\" = \"8:{"
+ Guid.NewGuid().ToString().ToUpper() + "}");
}
finally
{
// Close the file otherwise the compile may not work
reader.Close();
}
TextWriter tw = new StreamWriter(setupFileName);
try
{
tw.Write(file);
}
finally
{
// close the stream
tw.Close();
}
}
或者您可以参考 powershell 脚本替换 中 AssemblyInfo.cs 的 AssemblyVersion 以更改 .vdproj
文件中的 ProductVersion
值。
为了在 TFS 2015 中构建我的项目设置 file\msi 我使用
devenv 命令行任务:
solutionPath /build BuildConfiguration /project projectPath
我的问题是如何从该行更改 msi 版本(如果可能),例如 ... $(BuildVersion)
检查了 MSDN devenv 命令行(没有。)
谢谢
假设您想在构建期间更改 .vdproj
文件中的 ProductVersion
值。你是对的,没有命令可以直接改变它。
您需要使用 powershell 或以编程方式更改版本。这是this case中的一段代码,您可以参考:
static void Main(string[] args)
{
string setupFileName = @"<Replace the path to vdproj file>";
StreamReader reader = File.OpenText(setupFileName);
string file = string.Empty;
try
{
Regex expression = new Regex(@"(?:\""ProductCode\"" =
\""8.){([\d\w-]+)}");
Regex expression1 = new Regex(@"(?:\""UpgradeCode\"" =
\""8.){([\d\w-]+)}");
file = reader.ReadToEnd();
file = expression.Replace(file, "\"ProductCode\" = \"8:{" +
Guid.NewGuid().ToString().ToUpper() + "}");
file = expression1.Replace(file, "\"UpgradeCode\" = \"8:{"
+ Guid.NewGuid().ToString().ToUpper() + "}");
}
finally
{
// Close the file otherwise the compile may not work
reader.Close();
}
TextWriter tw = new StreamWriter(setupFileName);
try
{
tw.Write(file);
}
finally
{
// close the stream
tw.Close();
}
}
或者您可以参考 powershell 脚本替换 .vdproj
文件中的 ProductVersion
值。