客户的计算机运行程序出现异常,因为办公场所不在一块儿,没法直接在客户的机器上调试。此时但愿能够直接在开发人员的计算机(本地机器)上远程调试客户机上的软件。安全
本地机器的系统帐户为 GIS,密码为 111网络
客户机器的计算机名为 Client工具
要调试的程序名称为 test.exe测试
新建与本地机器一致的系统帐户
spa
要保证帐户和密码一致操作系统
在控制面板 -> 用户帐户 -> 添加GIS帐户,并设置密码为111调试
切换到GIS帐户中code
开启远程服务
orm
控制面板 -> 管理工具 -> 服务 -> 开启Remote Desktop Service服务开发
设置本地安全策略
控制面板 -> 管理工具 -> 本地安全策略 -> 本地策略 -> 安全选项 -> 网络访问:本地帐户的共享和安全模型 -> 设置为“经典 - 对本地用户进行身份验证,不改变其原本身份”
关闭防火墙
控制面板 -> Windows防火墙 -> 打开或关闭Windows防火墙 -> 关闭防火墙
本地新建文件夹bin,共享文件夹
控制面板 -> 用户帐户 -> 启动Guest帐户
控制面板 -> 家庭组 -> 更改高级共享设置 -> 家庭或工做 -> 密码保护的共享 -> 关闭密码保护共享
右键点击bin文件夹 -> 特定用户 -> 添加Guest用户 -> 修改“权限级别为读/写” -> 共享
打开本地机器共享的Remote Debugger文件夹,启动适当平台下的msvsmon.exe
若出现提示“此计算机上的Windows防火墙当前阻止了远程调试。远程调试要求容许调试器从网络接收信息。。。”,请勾选“取消禁止从任何计算机进行远程调试的限制”。
开启远程服务
控制面板 -> 管理工具 -> 服务 -> 开启Remote Desktop Service服务
设置本地安全策略
控制面板 -> 管理工具 -> 本地安全策略 -> 本地策略 -> 安全选项 -> 网络访问:本地帐户的共享和安全模型 -> 设置为“经典 - 对本地用户进行身份验证,不改变其原本身份”
共享Remote Debugger文件夹
文件夹在VS安装目录下的“Common7\IDE”中
控制面板 -> 用户帐户 -> 启动Guest帐户
控制面板 -> 家庭组 -> 更改高级共享设置 -> 家庭或工做 -> 密码保护的共享 -> 关闭密码保护共享
右键点击bin文件夹 -> 特定用户 -> 添加Guest用户 -> 修改“权限级别为读/写” -> 共享
VS中设置待调试项目的属性为远程调试
项目属性 -> 生成 -> 输出 -> 输出路径 -> 设置为客户机器的共享文件夹名称
\\Client\bin\
项目属性 -> 调试 -> 启动 -> 启动外部程序 -> 设置为
\\Client\bin\test.exe
项目属性 -> 调试 -> 启动选项 -> 工做目录 -> 设置为
\\Client\bin\
项目属性 -> 调试 -> 启动选项 -> 使用远程计算机 -> 设置为
Client
启动调试,就能够开始调试了
客户机器上自动启动test.exe
客户机器上的远程调试监视器显示“已链接”
该解决方法的客户机器及本地机器都是Win7 64位操做系统,其余系统可参考处理。
该解决方法只在VS2010中测试,其余版本可参考处理。
固然,这个方法的根本前提是两台机器能够互相ping通。