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

简介: 本文转载于:CS框架网http://www.csframework.com/archive/2/arc-2-20110829-1811.htmC#.Net组件开发 - 使用Attach to Process实时调试设计器代码组件设计的调试对象为两个:一是我们关注的组件本身(Component/Control),二是组件的设计器(Component Designer/Control Designer)。

本文转载于: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框架网,作者:孙中吕,如转载请注明出处。
目录
相关文章
|
9月前
|
人工智能 芯片
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
|
7月前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
272 0
|
11月前
|
开发框架 搜索推荐 算法
一个包含了 50+ C#/.NET编程技巧实战练习教程
一个包含了 50+ C#/.NET编程技巧实战练习教程
313 18
|
11月前
|
Linux API C#
基于 .NET 开发的多功能流媒体管理控制平台
基于 .NET 开发的多功能流媒体管理控制平台
187 9
|
11月前
|
Web App开发 前端开发 调度
一款基于 .NET + Blazor 开发的智能访客管理系统
一款基于 .NET + Blazor 开发的智能访客管理系统
163 8
|
11月前
|
前端开发 JavaScript C#
基于.NET8+Vue3开发的权限管理&个人博客系统
基于.NET8+Vue3开发的权限管理&个人博客系统
162 7
|
11月前
|
网络协议 C#
基于.NET WinForm开发的一款硬件及协议通讯工具
基于.NET WinForm开发的一款硬件及协议通讯工具
122 7
|
11月前
|
开发框架 人工智能 .NET
C#/.NET/.NET Core拾遗补漏合集(24年12月更新)
C#/.NET/.NET Core拾遗补漏合集(24年12月更新)
164 6
|
11月前
|
开发框架 算法 .NET
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
166 6
|
11月前
|
开发框架 Cloud Native .NET
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
170 6

热门文章

最新文章