AutoCAD 2010的二次开发已经告一段落。现在整理一下开发中遇到的一些问题。
最早的问题是autocad 2010在VS 2010上无法调试。奇怪的是,这个问题只出现在我同事的电脑上。我的电脑还可以,我暗自高兴。是性格问题吗?
开发环境:Windows XP SP3 VS2010 AutoCAD2010
这里主要讨论以下问题:
1.AutoCAD 2010在VS 2010上打不到断点;
2.在VS 2010中调试AutoCAD 2010,实现自定义添加;
3.设置断点,断点显示一个空圆圈。目前,不会命中断点,并且没有为此文档加载任何符号。
关于问题1,断点不起作用的原因归结为visual studio 2010不会选择正确的调试器版本,调试时启动的是默认调试器(4.0版)。此调试器不会在中看到断点。NET项目,但为了我们的。NET应用程序在AutoCAD 2010上运行等。我们需要。NET Framework 2.0( 3.5也运行在CLR 2.0上)。
这里有三种方法可以让VS 2010在这些项目上使用正确的调试器。哪种解决方案最适合您将取决于您的具体解决方案(我更喜欢解决方案2,它足够简单)。
解决方案1
启动AutoCAD2010程序,加载你开发的组件(可以通过写入注册表自动加载),然后将其(acad.exe)附加到VS2010(调试-附加到进程)。应当注意,默认情况下,所选择的代码类型是自动确定的。在少数情况下,自动确定的类型不一定正确。此时无法加载该符号,这在问题3中有描述,所以我们需要手动检查代码类型。
解决方案2
修改AutoCAD的配置文件,该文件在AutoCAD的安装目录下。按如下方式打开配置文件(acad.exe.config ):
修改配置文件,使其包含supported runtime version=' v 2 . 0 . 50727 '/节点,如下所示:
解决方案3
将宿主acad.exe文件作为现有项目添加到解决方案中,并将调试器设置为v2.0
右击解决方案资源管理器,选择添加-现有项目,并浏览到AutoCAD的启动文件Acad.exe。
右键单击该项目并将其设置为启动项目设置为启动项目。
打开“项目属性”对话框。
将调试器类型设置为托管(版本3.5、3.0、2.0)
至此,可以正常调试了。
vs2010未命中断点的解决方案:
1.JS代码调试需要检查IE浏览器中是否禁用了JS调试;而且只能用ie浏览器;
2.ie8 IE9不能调试和检查注册表。
HKEY _本地机器-软件-微软- Internet Explorer - Main
添加值为0的dword键TabProcGrowth。
如果键值已经存在,检查键值是否为0。
与VS2010调试期间未命中断点相关的问题;
解决方案。
1.不管你调试的浏览器是不是非IE,我漫游都打不到断点,改回IE7就行了。
解决方案。
哦,在你的ASP.NET项目中,项目属性中的web栏下的调试器检查silverlight调试器了吗?
我打开了silverlight和ASP.NET调试器,但没有打开本机代码和sql server。
另外我没用过IE8,不知道能不能支持调试。
解决方案。
网上有信息说silverlight调试器和ASP.NET调试器不能共存,否则silverligth项目无法调试,不过我两个都打开也没事。您可以尝试仅打开silverlight调试器。
如果这个不行,我也无解,呵呵。
解决方案。
楼主,试试重装。net3.5。
解决方案。
那你还不如换IE7,呵呵。其实silverlight4和。NET3.5,在下。NET4。
解决方案。
1.清理sl和web项目。
2.选择web项目中的浏览方法。
3.选择IE或360作为默认浏览模式。
4.直接浏览
解决方案。
先右键清理,再构建就OK了!!