windows - 如何在 Visual Studio 2008 中使用 Windows 符号包?

标签 windows visual-studio visual-studio-2008 debugging symbols

在 Microsoft,我可以下载 the Windows Symbol Packages for XP, Vista, Server, even Windows 7 .

我的问题是:如何在 Visual Studio 中使用这些符号?我可以在 VS 2008 的哪个位置添加下载和提取的符号,以便我可以调试到 Windows 本身?

我想实现的:我想调试_beginthreadex/endthreadex,看why/where some code is losing handles .

我知道我可以set visual studio 2008 to download source files , 但看起来这仅适用于 .net 框架源?

最佳答案

符号包仅对您当前运行的 Windows 版本有用——它们安装在 C:\Windows\Symbols 中,并且您一次只能安装一个。

改用符号服务器。

符号服务器

在 Visual Studio 中,转到:工具/选项/调试/符号。将“http://msdl.microsoft.com/download/symbols”添加到 符号文件 (.pdb) 位置 列表。您需要在 Cache symbols from symbol servers to this directory: 中输入缓存目录。我使用 C:\WebSymbols。您将获得足够的空间(我的空间大约有 600Mb),但您可以定期清理目录。

这最初会减慢您的调试 session ,直到缓存了您通常需要的所有符号。

或者,您可以通过将 _NT_SYMBOL_PATH 环境变量设置为类似这样的内容来为所有 Windows 调试器全局设置它:SRV*C:\WebSymbols*http://msdl.microsoft。 com/下载/符号

您还可以(作为构建过程的一部分)使用 SYMSTORE.EXE(来自 Debugging Tools for Windows)收集您自己的 .PDB 文件,并将该目录添加到此列表。

源服务器

.PDB 文件可以有一个(可选的)对构建它们的源文件的引用。正如您提到的,您可以使用此功能下载 .NET 源代码,但它也适用于 C++ 源文件。我们用原始源文件的 SVN 路径和修订版注释我们的 .PDB 文件。当我们使用“Go to Source”时,Visual Studio 使用 SVN 下载构建 EXE 的确切源代码。这真的很酷。

要注释 PDB 文件,您需要 Windows 调试工具中 srcsrv 目录中的工具。

关于windows - 如何在 Visual Studio 2008 中使用 Windows 符号包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/556383/

相关文章:

c# - vs 2008单元测试提示含义

c++ - 主机名未使用 Winsock 转换为 IP 地址

windows - 从用户 session 进程打开在服务中创建的 JobObject

visual-studio - CSS文件不断变化

python - 需要更改 virtualenv 的哪些部分才能重新定位它?

.net - 检测 VSPackage 中的 Visual Studio 版本

c++ - MFC C++ 托盘应用程序问题

visual-studio-2008 - 如何关闭 Visual Studio 2008 脚本调试

php - 如何使用 Visual Studio 在 Windows 上调试 PHP 5 运行时?

c++ - DLL加载和系统镜像空间