zoukankan      html  css  js  c++  java
  • C#.Net组件开发 使用Attach to Process实时调试设计器代码(转)

    本文转载于:CS框架网http://www.csframework.com/archive/2/arc-2-20110829-1811.htm

    C#.Net组件开发 - 使用Attach to Process实时调试设计器代码


    组件设计的调试对象为两个:一是我们关注的组件本身(Component/Control),二是组件的设计器(Component Designer/Control Designer)。调试组件本身只要设断点运行程序即可调试,因组件设计器在设计时工作而不是运行时,所以设断点是不能调试的。

    大多数情况下开发人员用MessgeBox来弹出信息进行调试,这是一种简单可靠的方式,但是无法进入到代码内部实时调试,所以阻碍了开发进度,有种最佳解决方案,是通过Debug菜单的Attach to Process 方式支持运行时实时调试。

    Attach to Process启动方式:

    贴图图片


    组件和控件的区别请参考

    控件与组件的区别(Control&Component的区别)

    http://www.csframework.com/archive/2/arc-2-20110630-1675.htm


    组件编程模型图:


    贴图图片


    Attach to Process功能介绍:


    VS IDE的 Debug菜单下面Attach to Process附加进程是用来把一个进程中的应用附加到VS调试环境中,对该应用进行调试,使用此技术的意义就是应用的运行和VS调试环境可以分开,一般 的应用调试就是跟着调试环境一起启动和结束,每次调试都需要重新从头启动应用。  那如果你只想调试调试应用的某一场景,那么你不得不浪费时间去推进到那个场景才能进行调试。 如果我们在VS IDE之外来启动应用,通过Attach的方式就会把该应用添加到VS IDE里面来,你多次的启动IDE都不会打断应用的运行。


    Attach to Process 实时调试操作步骤:


    一. 运行两个VS开发环境,打开同一个解决方案,如下图:



    贴图图片

    二. 在第二个解决方案(B)中设置调试断点,如下图:


    贴图图片

    三. 在第二个解决方案(B)中打开Debug\Attach to Process菜单,如下图:


    贴图图片


    四. Attach to Process窗体,在Available Processes列表中选择devenv.exe进程。

    注:我们刚才打开两个VS解决方案理论上有两个devenv.exe才对,为什么只有一个?原因是当前解决方案的devenu进程是不支持调试的,不能附加到自己的进程进行调试.

    选择devenv.exe ,点Attach按钮,如下图:


    贴图图片


    五. Attach to Process之后自动进入运行(调试)状态:


    贴图图片


    六. 切换到第一个解决方案(A)进行设计组件操作,如“生成MyNodeComponent的设计时代码”。



    贴图图片

    七. 当运行到设断点的代码处时,自动激活第二个解决方案(B),这时可看到进入实时调试状态,我们可以查看到组件或对象的实时内容。


    贴图图片


    八. 不过,调试状态下不支持修改代码的,否则会弹出Edit and Continue对话框。




    贴图图片

    版权:C/S框架网,作者:孙中吕,如转载请注明出处。
  • 相关阅读:
    C++笔记
    mongodb文件损坏的恢复--无可恢复数据
    wiredtiger--初学数据恢复
    mongodb异常恢复
    守护进程,互斥锁, IPC ,Queue队列,生产消费着模型
    进程,多进程,进程与程序的区别,程序运行的三种状态,multiprocessing模块中的Process功能,和join函数,和其他属性,僵尸与孤儿进程
    socket之UDP协议,并发编程介绍,操作系统发展史
    半连接数,粘包问题,自定义报头
    socket模块
    网络编程介绍,C/S 架构,网络通讯协议,osi七层
  • 原文地址:https://www.cnblogs.com/51net/p/2406993.html
Copyright © 2011-2022 走看看