Visual Studio开发工具----调试技巧-远程调试

3.9 远程调试

       有些情况下,软件安装到客户机器或测试机上后,使用过程中会出现问题,而研发人员又无法通过调试本机代码重现问题。这时,可以使用远程调试来帮助定位问题。

3.9.1 准备工作

3.9.1.1工具准备

(1)从研发人员电脑上的Visual Studio安装目录中找到远程调试工具(msvsmon.exe)。
 Visual Studio开发工具----调试技巧-远程调试
(2)将x64文件夹压缩成压缩包,然后拷贝到客户机器上解压。

3.9.1.2 调试符号文件(.pdb)文件准备

       由于调试需要依赖pdb文件,所以需要根据客户机上版本对应的源码,生成pdb文件,然后将pdb文件拷贝到客户机上版本对应的文件夹中。
       注意,如果客户机上软件所产生的问题能定位到指定的模块(DLL),则只需要重新编译对应的模块,并将生成的pdb文件拷贝到客户机上版本对应的文件夹中。
       另外,由于客户机上的版本为Release版本 (发布版本),Release版本使用了代码优化,如下图:
        Visual Studio开发工具----调试技巧-远程调试
       使用代码优化时,不方便调试单步调试,所以可以将优化选项改为“已禁用”。
       重新编译项目,并将生成的DLL和pdb文件拷贝到客户机上版本对应的文件夹中。

3.9.2 执行远程调试

(1)在客户机上启动远程调试工具(msvsmon.exe)并配置。
 Visual Studio开发工具----调试技巧-远程调试
选择“工具”> “选项”配置端口号和身份验证模式:
 Visual Studio开发工具----调试技巧-远程调试
端口使用默认的,身份验证模式选择“无身份验证-允许任何用户进行调试”。点确定。
 Visual Studio开发工具----调试技巧-远程调试
此时远程连接已启动。
(2)在客户机上运行需要调的的软件(.exe)
(3)在研发人员的电脑上启动Visual Studio开始进行远程调试,操作如下:
首先,选择“调试”> “附加到进程”
 Visual Studio开发工具----调试技巧-远程调试
弹出如下对话框:
 Visual Studio开发工具----调试技巧-远程调试
传输我们选择“远程(无身份验证)”。
 Visual Studio开发工具----调试技巧-远程调试
点查找,查找到远程连接。
 Visual Studio开发工具----调试技巧-远程调试
选择对应的远程连接。
 Visual Studio开发工具----调试技巧-远程调试
然后选择需要调试的exe点附加,开始进行调试。