Visual Studio 2010开发AutoCAD 2012 .net 应用程序调试时断点不起作用

简介:


AutoCAD 2012系列产品很快就要正式发布了,对于.net 开发者来说,VS2010无疑是最好用的工具,所以也有好多人在VS2010和AutoCAD 2012 beta版上做开发测试。你在开发时可能会遇到调试断点不起作用的问题。

 

如果你是在使用VS2010 基于AutoCAD 2011 及其垂直产品(Map 3D / Civil 3D/ AutoCAD Mechanical / AutoCAD MEP 2011 等等)上做开发,断点调试的问题请参考峻祁连以前的文章:

使用Visual Studio 2010调试断点不起作用的问题解决办法

 

如果你是用的AutoCAD 2012系列产品,在按照上面的方法来更改acad.exe.config 就有问题了,可能会引起AutoCAD崩溃。实际在VS2010+ AutoCAD 2012开发调试过程中,发现普通的Class里面的断点是可以跟踪到的,可能是创建自定义的Form做界面是,Form1.cs中的代码断点却不管用。这怎么办呢?

 

经过研究,原来是AutoCAD的纤程(Fiber)捣的鬼。我没写错字,是纤程(Fiber)而不是线程(Thread)。VS2010的调试器和AutoCAD的纤程一起工作时会有问题。解决的办法就是关闭AutoCAD纤程。

 

在AutoCAD中你通过系统环境变量FIBERWORLD来查看当前纤程是否打开,如果是1,则你可以通过把系统环境变量NEXTFIBERWORD设为0,并且关闭所有文档。这时新建文档时就是纤程关闭状态了,你还可以通过FIBERWORLD变量来查看确认。

 

关闭Fiber后,在Form中的断点应该就工作正常了。

image

 

另外在AutoCAD .NET应用程序中打开新创建推荐使用

Autodesk.Autodesk.ApplicationServices.Application.ShowModalDialog 和Autodesk.Autodesk.ApplicationServices.Application.ShowModelessDialog 方法,否则可能会有些不可预期的问题。

 

如果你想重新开启纤程(Fiber),你需要把NEXTFIBERWORD设为1,然后重新启动AutoCAD才能生效。

 

 

Cheers,

峻祁连

作者: 峻祁连
邮箱:junqilian@163.com 
出处: http://junqilian.cnblogs.com 
转载请保留此信息。


本文转自峻祁连. Moving to Cloud/Mobile博客园博客,原文链接:http://www.cnblogs.com/junqilian/archive/2011/03/18/1988327.html ,如需转载请自行联系原作者
目录
打赏
0
0
0
0
23
分享
相关文章
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
D1net阅闻|OpenAI员工疯狂暗示,内部已成功开发ASI?被曝训出GPT-5但雪藏
基于.NET8 + Vue/UniApp前后端分离的快速开发框架,开箱即用!
基于.NET8 + Vue/UniApp前后端分离的快速开发框架,开箱即用!
114 0
2025年全面的.NET跨平台应用框架推荐
2025年全面的.NET跨平台应用框架推荐
102 23
|
3月前
|
基于 .NET 开发的多功能流媒体管理控制平台
基于 .NET 开发的多功能流媒体管理控制平台
66 9
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
97 12
.NET 在 Visual Studio 中的高效编程技巧集
.NET 在 Visual Studio 中的高效编程技巧集
58 12
一款基于 .NET + Blazor 开发的智能访客管理系统
一款基于 .NET + Blazor 开发的智能访客管理系统
基于.NET8+Vue3开发的权限管理&个人博客系统
基于.NET8+Vue3开发的权限管理&个人博客系统
基于.NET WinForm开发的一款硬件及协议通讯工具
基于.NET WinForm开发的一款硬件及协议通讯工具
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等