HOWTO: 解决 远程桌面连接已停止工作 的故障问题
故障现象是用户打开“远程桌面连接”程序去登录一台计算机,连接过程中该程序发生错误,提示“远程桌面连接 已停止工作”,如下图所示。
对于此类应用程序发生崩溃的故障问题,通常可展开详细信息查看故障程序中具体的出错模块进行排查。也可以在事件查看器中的应用事件日志中查找具体错误信息。
但是本案例中,导致 mstsc.exe(远程桌面连接)的错误模块是 ntdll.dll,由于是系统核心文件,且系统未出现其他异常,故怀疑是 ntdll.dll 加载和处理其他驱动动态链接库文件时发生了错误。
但是该如何查看 mstsc.exe 加载的动态链接库呢?!好在 Windows Error Reporting(WER) 为我们记录了相对详细的信息,可用于进一步的排错。首先通过事件查看器找到“Windows Error Reporting”日志,打开日志查看 WER 存储的具体位置,通常位于当前用户配置文件目录下: “\AppData\Local\Microsoft\Windows\WER\ReportAchive”。
文件名为 Report.wer,此文件使用 UTF-16LE有签名 编码,可以使用一些第三方的文本编辑器打开查看,当然也可以用系统自带的记事本,但是显示效果惨不忍睹!
此外,还可以使用第三方的 WER 查看器,比较有名的是 NirSoft 出品的 AppCrashView 工具。(PS:使用参数 /ReportsFolder <Folder> 可以直接定位打开 WER 目录)
通过分析发现,mstsc 在载入 HP1005 驱动时发生了错误,是导致本次崩溃的罪魁祸首!解决方法是在通过远程桌面连接前,修改本地资源选项,不要勾选打印机。如果此打印机不再使用,建议直接卸载驱动!