VS2010 调试AUTOCAD窗体事件进不去断点

2024-06-13 11:08

本文主要是介绍VS2010 调试AUTOCAD窗体事件进不去断点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这个问题困扰了我好长时间,现在终于找到了原因已经解决方案。做个保存

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,则你可以通过把系统环境变量NEXTFIBERWORLD设为0,并且关闭所有文档。这时新建文档时就是纤程关闭状态了,你还可以通过FIBERWORLD变量来查看确认。

 

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

image

 

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

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

 

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

 

 

Cheers,

峻祁连

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

这篇关于VS2010 调试AUTOCAD窗体事件进不去断点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1057126

相关文章

使用C/C++调用libcurl调试消息的方式

《使用C/C++调用libcurl调试消息的方式》在使用C/C++调用libcurl进行HTTP请求时,有时我们需要查看请求的/应答消息的内容(包括请求头和请求体)以方便调试,libcurl提供了多种... 目录1. libcurl 调试工具简介2. 输出请求消息使用 CURLOPT_VERBOSE使用 C

C++中实现调试日志输出

《C++中实现调试日志输出》在C++编程中,调试日志对于定位问题和优化代码至关重要,本文将介绍几种常用的调试日志输出方法,并教你如何在日志中添加时间戳,希望对大家有所帮助... 目录1. 使用 #ifdef _DEBUG 宏2. 加入时间戳:精确到毫秒3.Windows 和 MFC 中的调试日志方法MFC

Python中的异步:async 和 await以及操作中的事件循环、回调和异常

《Python中的异步:async和await以及操作中的事件循环、回调和异常》在现代编程中,异步操作在处理I/O密集型任务时,可以显著提高程序的性能和响应速度,Python提供了asyn... 目录引言什么是异步操作?python 中的异步编程基础async 和 await 关键字asyncio 模块理论

禁止平板,iPad长按弹出默认菜单事件

通过监控按下抬起时间差来禁止弹出事件,把以下代码写在要禁止的页面的页面加载事件里面即可     var date;document.addEventListener('touchstart', event => {date = new Date().getTime();});document.addEventListener('touchend', event => {if (new

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

vscode中文乱码问题,注释,终端,调试乱码一劳永逸版

忘记咋回事突然出现了乱码问题,很多方法都试了,注释乱码解决了,终端又乱码,调试窗口也乱码,最后经过本人不懈努力,终于全部解决了,现在分享给大家我的方法。 乱码的原因是各个地方用的编码格式不统一,所以把他们设成统一的utf8. 1.电脑的编码格式 开始-设置-时间和语言-语言和区域 管理语言设置-更改系统区域设置-勾选Bata版:使用utf8-确定-然后按指示重启 2.vscode

FreeRTOS内部机制学习03(事件组内部机制)

文章目录 事件组使用的场景事件组的核心以及Set事件API做的事情事件组的特殊之处事件组为什么不关闭中断xEventGroupSetBitsFromISR内部是怎么做的? 事件组使用的场景 学校组织秋游,组长在等待: 张三:我到了 李四:我到了 王五:我到了 组长说:好,大家都到齐了,出发! 秋游回来第二天就要提交一篇心得报告,组长在焦急等待:张三、李四、王五谁先写好就交谁的