• 使用Visual Studio进行远程调试


    关键字

    •   远程调试器
    •   Windows凭证
    •   pdb符号文件
    •   进程调试(远程调试)

    过程

      准备应用程序

        在客户机A上使用C#编写ConsoleApplication工程并并以“DEBUG配置”生成,然后将生成的ConsoleApplication.exe拷贝至服务器S运行,并将此工程拷贝至客户机B上。

        注意“RELEASE配置”的不同在于以下配置,会导致远程调戏时会出现“由于代码方法优化,无法监视变量的值”之类的信息:

    • “调试信息”选项为“pdb-only”
    • “优化代码”选项为“勾选”状态

      准备调试器

    •     将“安装路径 \Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger”拷贝至服务器S上运行
    •     在客户机B上使用“telnet 服务器地址 4016”确定与服务器S的“远程调试器”的连接畅通

      在客户机B上添加服务器S的windows凭证

        打开Windows的“控制面板/凭证管理器”,添加一个“windows凭证”,需要输入服务器的地址、用户名与密码

      在客户机B上使用VS进行调试

    •     点击菜单“调试/附加到进程...”后,将服务器的IP或主机名填写至“限定符”文本框后回车,在下面的列表框中选择“ConsoleApplication.exe”后点击“附加”
    •     点击菜单“调试/窗口/模块”,右击ConsoleApplication.exe模块选择“符号设置...”,并在弹出来的对话框中将pdb文件所在的目录加入进入后点击确定,然后再点击模块选择“加载符号”
    •     打开“*.cs”源代码文件(不需要打开整个工程)后下断点调试

    建议

      在“符号对话框”中为应用程序设置符号文件目录后,再在同一机上使用VS打开工程,可能会弹出“启用了优化或没有调试信息”之类的信息而发现无法断点调试了,此时进入符号对话框中将符号目录移除,并点击“指定排除的模块”在弹出的对话框中移除相应的应用程序即可

  • 相关阅读:
    【剑指Offer】21、栈的压入、弹出序列
    【剑指Offer】20、包含min函数的栈
    【剑指Offer】19、顺时针打印矩阵
    【Shell编程】Shell基本语法
    【Shell编程】Shell程序设计
    linux 大中括号变量解读
    Python 二进制,十进制,十六进制转换
    Python3.x和Python2.x的区别
    python通过SSH登陆linux并操作
    PEP8特性
  • 原文地址:https://www.cnblogs.com/beta2013/p/3377266.html
Copyright © 2020-2023  润新知