【问题标题】:How Can I Save a Generated Symbol File?如何保存生成的符号文件?
【发布时间】:2012-05-23 00:28:30
【问题描述】:

我正在使用 Project White 测试我的应用程序。该项目的二进制文件包括 Castle 项目的 DLL:Castle.DynamicProxies2.dll(或类似的东西)。不幸的是,没有为此 DLL 提供符号 (PDB) 文件。一堆其他 DLL 确实有自己的符号文件。

当我运行 UITest 时,为这个 Castle DLL 生成符号文件需要很长时间。我想将这个生成的 DLL 保存在某个地方,这样就不必一直生成它。

我的 Visual Studio 设置中有一个符号缓存文件夹,当我运行应用程序并按“加载所有符号”时,我收到一个消息框,告诉我它正在下载 Castle DLL 的符号文件。但是,它没有出现在我的缓存文件夹中(可能是因为它是专有的非 Microsoft DLL)。 “总是在模块旁边加载符号”选项已打开。如果我关闭它,甚至我自己的项目的符号都不会加载。 Castle DLL 被复制到输出文件夹,否则它甚至不会运行。

有没有办法保留这个自动生成的符号文件,而不是每次都创建它?我查看了临时文件夹,但找不到。

【问题讨论】:

  • PDB 文件不是从已编译的 DLL 生成的,因为准确生成它们所需的数据不再存在于 DLL 中,仅存在于源代码中(例如,局部变量名)。它们通常包含在 DLL 中用于调试目的。可以使用反编译器重新创建 PDB 的近似值,但您似乎没有使用它。那么“生成符号文件”到底是什么意思?确定生成了什么?
  • 好吧,Visual Studio 告诉我“正在为 Castle 加载符号文件...”我希望有办法保存它或告诉 VS 不要查找它,因为每次都需要相当长的时间.行为现在似乎消失了,不知道我改变了什么。我将调试选项更改为仅加载我自己的解决方案程序集的符号,同时仍加载模块旁边的符号文件。

标签: .net visual-studio-2010 symbols visual-studio-debugging


【解决方案1】:

这些类型的文件夹本身有一些与之相关的错误。从以前的经验中发现,第一个尝试的解决方案应该是重新启动计算机,然后重新打开 VS。该文件夹应返回其标准设置并正常运行(一段时间)。仍然没有找到导致文件夹错误行为的 VS 操作。 http://msdn.microsoft.com/en-us/library/x54fht41.aspx 是我目前正在搜索的地方,如果你在那里看到我没有看到的东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-26
    • 2014-02-16
    • 2013-02-05
    • 2014-03-04
    • 1970-01-01
    • 1970-01-01
    • 2011-02-13
    • 1970-01-01
    相关资源
    最近更新 更多