我的问题是这样的:我收到TFS构建失败,我已经跟踪到了SOFTWARE \ Microsoft \ VisualStudio \ 9.0Exp下似乎缺少注册表项的内容。
本机通过命令行安装了VS SDK 1.1:msiexec vsski.msi
所以,我猜我需要将一些属性传递给msiexec告诉它它应该安装一些默认情况下没有安装的组件 - 这是正确的吗?如果是这样,有人能指出我正确的财产吗?
msiexec vssdk.msi WHATPROPERTY =“我想控制安装的组件”
或者我在这里偏离轨道?
答案 0 :(得分:0)
好的,我找到了答案,我有点偏离轨道。
更多背景信息:调用自定义任务VsTemplatePaths时,Microsoft.VsSDK.targets文件的VsTemplatePathsTarget中发生错误。一个小反射器(伟大的工具!)告诉我它正在尝试找到上面的注册表项。
当我更仔细地跟踪它时,我发现钥匙在HKLM下不存在,但是在HKCU下,但是反射器和一些跟踪信息表明它正在使用HKCU。更确切地说,有问题的密钥存在于我的HKEY_USER帐户下,但不存在TFS构建运行的帐户。
事实证明,我的自动安装顺序是在安装VS SDK之后创建了构建帐户,因此当它配置注册表设置时,它只对现有用户而不是默认用户执行此操作。