我有一个客户端程序,它通过本地Windows服务与服务器进程通信。这三个程序由我们自己实现。为了分析错误情况,我想同时对所有三个进程进行崩溃转储,以便它们之间没有任何不一致。触发器是客户端的一个例外。
在测试环境中,服务器在同一台计算机上运行。在这种情况下,我可以使用.tlist
和.attach
附加到相关流程。抛出异常后,所有进程都会被挂起,我可以在每个转储上执行.dump
。
如果服务器在不同的计算机上运行,是否可以实现相同的结果?怎么样?
我尝试过:将WinDbg附加到服务器端进程,然后运行远程调试服务器(.server
),从客户端上的新WinDbg实例连接到它。但是我无法附加到本地进程,因为.tlist
和.attach
命令在服务器而不是客户端上运行。