【发布时间】:2012-10-09 20:40:58
【问题描述】:
我正在尝试从我的 WP7 应用程序的堆栈跟踪中获取行号。我已将调试信息设置为完整,并在调试配置中运行应用程序,但堆栈跟踪中没有行号。我怎样才能解决这个问题?我知道 BugSense,但不想使用它。
【问题讨论】:
标签: c# windows-phone-7 exception stack-trace windows-phone
我正在尝试从我的 WP7 应用程序的堆栈跟踪中获取行号。我已将调试信息设置为完整,并在调试配置中运行应用程序,但堆栈跟踪中没有行号。我怎样才能解决这个问题?我知道 BugSense,但不想使用它。
【问题讨论】:
标签: c# windows-phone-7 exception stack-trace windows-phone
不要认为这是可能的,因为line number 指的是code-file 中的行号,它在编译后与二进制文件失去了任何关系。这就是我们使用PDB 文件的原因。 它们是“数据库”,用于保存实际执行的代码与其最终二进制状态之间的关系。
所以不要认为在运行时有任何可能获得line number。
但如果你有一个上次编译的PDB 文件,你可以从
StackFrame.GetFileLineNumber ,这样做:
获取包含以下代码的文件中的行号 执行。此信息通常是从调试中提取的 可执行文件的符号。
【讨论】: