Visual Studio 2013和TFS Build 2015:Devenv.exe无法生成MSI文件 [英] Visual Studio 2013 and TFS Build 2015: Devenv.exe unable to produce MSI file

查看:174
本文介绍了Visual Studio 2013和TFS Build 2015:Devenv.exe无法生成MSI文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在将TFS 2013服务器升级到TFS2015.因此,在尝试使用XAML模板构建脚本在具有新版本的构建代理上执行应用程序构建时,我遇到了一个问题(是在TFS 2013中创建的).

We are in the process of upgrading our TFS 2013 server to TFS 2015. In that regard I have run into an issue when trying to perform an application build on a build agent with the new version, using our XAML template build script (which was created in TFS 2013).

我们的大多数解决方案在构建时都使用上述模板.该解决方案(仍然是)仍然使用安装项目(.vdproj)来为该应用程序生成MSI程序包.为给定的应用程序建立安装项目并生成MSI;我们在模板构建脚本中调用 devenv.exe (在我们的示例中,它指向Visual Studio 2013):

Most of our solutions use the above-mentioned template when we build them. The solutions (sadly, still) use setup projects (.vdproj) to generate an MSI package for the application. To build the setup project, and produce an MSI, for a given application; we call the devenv.exe (in our case, it points to Visual Studio 2013) in our template build script:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe /Build "Release|Any CPU" "d:\<path_to_solution>\solution.sln" /Out c:\temp\out.log

但是,在我们的新构建代理程序上,没有MSI生成,并且调用 devenv.exe 既不会产生任何输出,也不会产生任何错误消息.但是,如果我尝试调用 devenv.com ,它将开始构建,但仍未生成MSI.

However, on our new build agent no MSI is produced, and calling devenv.exe yields neither any output, nor any error messages. If I try to call devenv.com, however, it starts building, but still no MSI is being produced.

使用 devenv.com 开始构建内容时,似乎完全不考虑安装项目(我已经检查了构建配置,并且在发行版|任何CPU"配置.

When things start to build using devenv.com It seems like it is completely disregarding the setup project (I have checked the build configurations, and the setup project is checked for build on the "Release|Any CPU" configuration).

我查看了构建日志,构建过程活动日志,并且还尝试在构建代理上手动执行这些步骤,但是我找不到任何可以向我指明方向的内容可能是造成问题的原因.

I have looked at build logs, build process activity logs, and I have also tried to perform the steps manually on the build agent, but I haven't been able to find anything that could point me in the direction as to what might be causing the issue.

有人知道这可能是什么原因吗? TFS Build 2015可能有问题吗?据我所知,旧设置和新设置之间的唯一区别是:

Does anyone have an idea what could be the reason for this? Could it be an issue with TFS Build 2015? The only difference between the old setup, and the new - as far as I can tell - is the following:

    在新的构建代理程序上,将
  1. VS 2013安装在C:而不是D:上,即 devenv 的路径会有所不同,但是只要构建脚本在查找,就没有关系找到合适的地方...
  2. 我们使用的放置位置与旧设置中使用的放置位置不同
  1. VS 2013 was installed on C: rather than D: on the new build agent, i.e. the path to devenv would be different, but that should not matter as long as the build script is looking in the right place, and finds it...
  2. We use a different drop location than what we used for the old setup

感谢我可以获得的任何帮助和建议.

Appreciate any help and suggestions I can get.

推荐答案

问题已解决,一切都已成功构建.在查看用于TFS Build 2013的构建代理与用于TFS Build 2015的构建代理之间的设置之间的区别时,我做得还不够好.

Problem solved, and everything is now building successfully. I did not do a good enough job of looking at the diff between the setup we had on the build agent we used for TFS Build 2013 vs. the one we set up for TFS Build 2015.

首先,为了能够在VS 2013中构建安装项目,需要安装

Firstly, to be able to build setup projects in VS 2013, one needs to install the Visual Studio 2013 Installer Projects extension on the build agent.

但是,此扩展存在一些错误,这些错误通常会导致建筑安装项目产生以下错误消息:"验证时发生错误.HRESULT ='8000000A'".可以通过修改注册表来解决此错误,如此SO帖子中所述.

However, there are some bugs with this extension that often causes building setup projects to yield the following error message: "An error occurred while validating. HRESULT = '8000000A'". This error can be fixed by modifying the registry, as described in this SO post.

但是,使用devenv.exe构建安装项目仍然无法正常工作.我还无法弄清楚为什么.

Building the setup projects using devenv.exe, however, still doesn't work. I have not been able to figure out why, yet.

这篇关于Visual Studio 2013和TFS Build 2015:Devenv.exe无法生成MSI文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆