【问题标题】:SymStore - add multiple filesSymStore - 添加多个文件
【发布时间】:2016-07-29 20:52:36
【问题描述】:

我正在尝试使用symstore.exe 将一堆.pdb 文件添加到符号服务器。不是目录中的所有.pdb,而是其中的一部分(基于日期)。

要将它们添加到单个事务中,我使用symstore ... /f '@filelist.txt',其中filelist.txt 是一个包含真实.pdb 的文件,每行一个 - 正如命令行帮助所说:

/f File         Network path of files or directories to add.
                If the named file begins with an '@' symbol, it is treated
                as a response file which is expected to contain a list of
                files (path and filename, 1 entry per line) to be stored.

(此信息仅存在于symstore的命令行帮助中,不在对应的在线help page中。)

这不起作用,它存储了 0 个文件。我认为这个功能 - 从文件列表中添加多个文件 - 并没有真正实现。

有没有人成功在symstore.exe 的单个事务中添加文件列表?

【问题讨论】:

  • 你发现了吗,怎么办?
  • 3 年后微软文档仍未更新(我刚刚提出了更改请求)。你的帖子对我帮助很大!谢谢!

标签: windows pdb symbol-server symstore


【解决方案1】:

最后,我想通了。 @ 和响应文件的功能实际上是支持的。

使用 symstore 的 /o 开关调试输出后,我注意到错误输出中有一个奇怪的字符 ÿþC

PS C:\Development\symstore add /f @C:\temp\dllsAndPdbsToAdd.txt /s C:\temp\symstore\ /t AwesomeProject 
SYMSTORE MESSAGE: 0 alternate indexers registered
SYMSTORE MESSAGE: LastId.txt reported id 8
SYMSTORE MESSAGE: Final id is 0000000008
SYMSTORE ERROR: Class: Internal. Desc: Failed to index C:\Development\AwesomeProject\ÿþC. Line: 169. Error 32

所以我将 Notepad++ 中 @C:\temp\dllsAndPdbsToAdd.txt 文件的 encoding 更改为 ANSI 并且它起作用了。

【讨论】:

  • 要以兼容的编码存储文件,可以使用以下 PS 命令 "$DllsPaths |Out-File C:\temp\dlls.txt -Encoding ascii"
  • 感谢您的回答!到目前为止,我已经解决了它(通过将所有文件添加到一个文件夹中),但这仍然很有价值。另一个以自己的方式制作标准功能的好例子(事实证明这比通常的方式更糟糕)。
  • 看起来像 UTF-8 BOM。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-06
  • 2016-05-06
  • 2017-08-11
  • 2012-01-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多