您最喜欢启动 Windbg 用户模式远程调试会话的技术是什么?为什么您比其他技术更喜欢这种技术?(优点缺点)

使用windbg 进行用户模式远程调试至少有四种不同的方法,如Windows 调试工具帮助文件的“远程调试”部分中所述。

  1. 在目标上运行应用程序,然后从主机 Windbg 附加到它
  2. 让主机windbg使用remote.exe在目标上启动应用程序
  3. 让“智能客户端”主机 Windbg 通过在目标上运行的进程服务器在目标上启动应用程序
  4. 使用选项“-server”在目标计算机上运行 Windbg 实例来自动启动服务器,然后从第二台计算机连接到该服务器。
有帮助吗?

解决方案

不存在“最好”的解决方案。每种可能性都有优点和缺点,了解所有这些可能性是有好处的。这取决于几个因素,例如:

  • 符号位于哪里
  • 哪台 PC 可以访问 Internet 以下载操作系统符号
  • 您可以将多少数据复制到服务器(如果只是一个 Exe,客户端通常会更好地接受)
  • 客户端和服务器之间的带宽是多少
  • 您是否需要 CDB/WinDbg 之外的其他命令,例如访问CMD,然后考虑remote.exe
  • 谁可以在服务器端使用,可以轻松告诉您许多神秘命令的调试专家,或者几乎不知道如何启动命令提示符的普通用户
  • 双方都在专用网络中,因此您需要一个“中间人”服务器才能相互访问(或使用端口转发作为替代方案,IT人员不希望这样做,并且可能需要几天的时间才能完成设置)向上)

在这 4 个选项中,不要忘记客户通常希望准确了解您所做的事情,因此他们需要 RDP 会话、Teamviewer 或类似工具。这是他们所理解的。

其他提示

选项 1 是我最喜欢的,因为它是最简单的。我可以以正常方式启动应用程序,而不必担心让 WinDbg 设置正确的工作目录、传递任何命令行参数等。

幸运的是,我还没有遇到过这种方法不起作用的情况!

我倾向于使用选项 4 (-server),因为它是唯一一个在您闯入内核调试器足够长的时间以使 TCP 连接超时时不会“弹出”的选项。但这更复杂并且不能完全令人满意。所以我正在寻找“最佳实践”。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top