百科 > IT百科 > 系统软件 > 办公软件教程 > 正文

AutoCAD 2010在VS 2010上无法调试怎么办

  最早遇到的问题是关于AutoCAD 2010在VS 2010上无法调试。

  开发环境:Windows XP SP3+VS2010+AutoCAD2010

  这里主要讨论以下几个问题:

  1、AutoCAD 2010在VS 2010上无法命中断点问题。

  2、调试AutoCAD 2010在VS 2010 中的实现自定义添加。

  3、设置断点,它显示一个空的圆圈,当前不会命中断点,还没有为该文档加载任何符号。

  关于问题1,断点不起作用的原因归结为Visual Studio 2010不会选择正确的版本的调试器,在调试时启动了默认的debugger(v4.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)如下:

  修改配置文件,以便它包含 节点,如下:

  解决方案3

  把宿主acad.exe文件作为一个已有的项目添加到您的解决方案中,并把debugger设置为v2.0。

  右键单击Solution Explorer,选择添加->现有项目,浏览到AutoCAD的启动文件Acad.exe

  右键单击该项目,把它设置为启动项目设为启动项目。

  打开项目属性对话框。

  设置调试器类型为托管(3.5、3.0、2.0版)。

  至此,可以正常调试了。

  vs2010无法命中断点的解决方案:

  1、JS代码调试需要检查IE浏览器中JS调试是否禁用;并且只能用IE浏览器。

  2、IE8 IE9无法调试检查注册表

  HKEY_LOCALMACHINE -> SOFTWARE -> Microsoft -> Internet Explorer -> Main。

  增加dword键TabProcGrowth,值为0就行。

  如果已经存在该键值,检查该键值是否为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、直接浏览

  ------解决方案--------------------

  先右键Clean,再build 就OK。

网友评论