3

我有 TeamCity 符号服务器插件可以正常工作,只要我允许来宾登录 TeamCity 并且来宾具有适当的权限,就可以按预期从 VS2017 中提取符号和源代码。

但是,所需的权限是相当宽松的(允许下载源代码)。这是一个私人的商业团队,所以我不想允许公共/访客访问。我希望它经过身份验证,但似乎无法让 VS2017 提示输入凭据或将它们传递到在 VS2017 的 Debugging>Symbols settings ( https://user:pass@my.teamcity.com) 中配置的 URL 上。输出窗口始终显示“符号服务器身份验证失败”。

不确定这是否是 VS 的限制,或者我没有正确配置它。有谁知道这是否/如何可能?

4

2 回答 2

4

编辑: 看起来这是一个错误。(感谢@mmchenry 提供错误报告链接。)根据评论,它将在即将发布的版本中修复。同时,可以使用以下解决方法。


我想这可能是VS 2017的一个新bug。更新到15.3后,我无法让身份验证提示出现。它曾经经常出现。现在,由于您列出的错误,符号信息总是失败:Symbol server authentication failed.

我有一个解决方法。symchk.exeWindows SDK 中的实用程序下载符号。使用 Win10 SDK,您可以在此处找到 symchk:c:\Program Files (x86)\Windows Kits\10\Debuggers\x64\symchk.exe

这是一个如何使用它的示例(powershell):

& "c:\Program Files (x86)\Windows Kits\10\Debuggers\x64\symchk.exe" `
  "C:\path\to\Your.dll" /r /v /s `
  "srv*c:\symcache*https://my.teamcity.com/app/symbols"

这仍然提供了一个 UI 提示来获取凭据,然后下载到符号缓存,您可以在 Debug->Symbols 选项中让 Visual Studio 从中加载:

Visual Studio 调试符号选项缓存

于 2017-09-03T21:32:44.207 回答
1

现在在 15.5 中已修复此问题。据我所知,它没有在发行说明中列出,但一位MS 代表评论说它已在 15.5 中修复,所以我试了一下。

在我安装 15.5 后,它一开始并没有提示我输入凭据。所以我删除/重新添加了符号服务器设置并清理了符号缓存。然后在下一次运行时,它提示我输入凭据,成功下载了符号并允许我调试程序集。

于 2017-12-07T17:45:46.783 回答