经常有网友在公众号和群里发来一张CAD异常退出的截图,然后问我什么原因,如下图所示。
其实看这个截图我也无法分析处任何原因,因为这只是一个常规的异常退出提示信息,其他软件也有可能弹出类似的信息,根据这个信息我也无法判断是因为什么原因退出的,如果没有其他信息,我相信AUTOCAD的开发人员也无法通过这张截图判断错误的原因。虽然类似这样的错误对话框看不出任何有价值的信息,但有些错误对话框从标题和内容就可以明确判断出错误原因,从而找到解决办法。
无论你用的是CAD的什么版本,估计都遇到过异常退出的状况。遇到这种情况肯定特别郁闷,要么是图打不开,没法干活!要么是辛辛苦苦画了半天突然退出,几个小时的活白干了!对于AUTOCAD大家可能会容忍一点,会想是不是自己的图或电脑有问题了,或者自己CAD安装包有什么问题了;如果用的是国产CAD,肯定就会抱怨:什么破软件!
CAD为什么会异常退出呢?遇到这种情况应该怎么办呢?下面将我遇到的几种原因情况大致列举一下,并简单说一下解决方法,希望对大家有帮助。
当CAD出现异常的时候,首先要做一个初步判断和分析,然后再进一步寻找解决办法。首先确认是否跟图纸有关,如果只是在打开和操作某张图纸的时候异常,那就想办法修复图纸;如果与图纸无关,那就看看是不是跟特定的操作或命令相关,比如启动CAD就退出、打开图纸、打开图层管理器退出,就需要看看是不是激活有问题还是文件损坏了;如果CAD之前用的很好,突然出现了异常,那就想想最近对系统或CAD做了什么处理,有没有安装或卸载什么软件。
一、与图纸相关的退出
有很多操作异常跟图纸有关,比如操作卡顿或复制粘贴无效,当然也有一些异常退出是跟图纸有关,遇到的情况主要有下面几种。
1、内存耗尽
如果图纸巨大或有大量冗余数据,导致开图的时候内存耗尽,最终导致CAD软件退出,这种情况在32位版本的CAD上比较常见。
确认是否因内存不足导致CAD退出的方法很简单。当CAD开图时响应很慢时,我们可以打开WINDOWS的任务管理器,看一下CAD的内存使用情况。如果用的32位CAD,当CAD内存使用超过1.5G,CAD一般就会直接退出,如果内存占用1.2G以上,也许能打开,但在操作图纸的时候仍有可能退出。即使你用的64位机器和CAD的,但如果CAD占用内存超过一定程度,也一样有可能出现退出现象。任务管理器的截图如下:
这是XP系统任务管理器的截图,其他系统可能不太一样,重点观察虚拟内存占用的情况。如果你的任务管理器没有显示虚拟内存,可以自己添加列。
就算是内存占用巨大,情况也不完全一样,我遇到的就有好几种,下面简单列举一下。
复杂的地形图和市政规划图纸。
图纸的数据确实比较多,有些地形图有大量复杂的多段线或样条曲线,小的四五十兆,大的有一、二百兆,这种图纸在打开的时候,有的需要占用几个G的内存,如果用的是32位的CAD或机器内存比较少,经常会吃不消。
如果需要经常处理这类图纸的用户,建议安装64位系统和64位的CAD版本,配置更多的内存。
图纸不大,但使用了大量的密集填充。
填充样式的描述比较简单,图案名称、比例、边界线等等,但填充要显示到屏幕上,必须将数据转换为一条条的直线,如果填充非常密集,就会导致显示数据巨大,内存占用急剧上升。
首先要确认这些密集填充是否图纸必须的。有些初学者不太清楚线性填充和实体(SOLID)填充的区别,默认选用线性填充后,将比例改得很小后当SOLID填充用。如果能查到这类问题,直接将填充样式改成SOLID就可以解决了。
图中有冗余的错误数据
图形并不多,但图纸却特别大,打开和操作都很慢,甚至打开直接退出。这种图纸遇到过很多张,有的是因为有大量注释性比例,更多地是因为DGN线型的孤立图形数据。这种图纸首先操作卡顿,更多人反映的是无法复制粘贴,但也有个别图纸因为数据特别多导致退出。
2、图纸中有错误数据
有些图纸中有错误数据,导致CAD在处理这些错误数据时出现异常并导致退出。
有些图纸打开时占用内存不大,但有时CAD一打开这样图纸就会退出,并会明确提示让我们修复打开文件,如下图所示。
或者图纸能打开,执行某些特定操作就会退出,例如打开图层管理器就会退出。
这种图纸多半是有错误数据,CAD是否会退出取决于CAD自身的容错性,有些图纸在AUTOCAD打开会退出,但在浩辰CAD里可以正常打开,有一些AUTCAD可以正常打开,而在浩辰CAD里则有可能会退出。
错误数据比较常见,很多图纸里都有,但导致软件打不开或异常退出的错误图纸倒不太多。一些无法打开的图纸或操作过程异常的图纸,可以用修复(RECOVER)打开,会看到CAD检测到并修复了一系列错误数据。当然也有些图纸,修复也无法打开。
为什么很多图纸中都会有错误数据呢?这些错误数据是怎么来的呢?
说实话,我也说不清楚,估计来源可能有下面两种:
一是从其他软件转换过来的数据,
二是CAD的插件或二次开发软件生成的数据。
不同软件对DWG/DXF文件兼容的程度不一样,将其他数据写成DWG/DXF数据有可能发生错误;而一些CAD插件或二次开发软件在创建或修改对象时,如果接口使用不正确或代码写得有问题,也有可能生成错误数据。就算用AutoCAD保存成不同版本的DWG/DXF,我估计也不能保证所有数据都能正确保存,因为不同版本支持的图形对象不同,对象的参数也有可能不同。
遇到打开CAD异常退出或操作过程中CAD异常退出的图纸,可尝试用修复(recover)命令打开图纸,看通过修复错误后是否能恢复正常。
二、遇到了CAD的BUG
不管那款软件都会有BUG,从WINDOWS到OFFICE,再到CAD。就算是AUTOCAD,估计他们每个版本的问题库也会有几千个甚至上万个问题,只是普通操作触及不到这些BUG。国产CAD遇到软件BUG的几率会稍微高一些。不过,国产CAD经过十多年的发展,现在的版本也相当稳定了。
如果确认自己的图纸没有问题,但操作过程仍然出现了异常退出,估计是遇到CAD的BUG了。此时也没有什么好办法,可以尝试用其他操作方式替代,看是否能绕过这个BUG。另外,CAD软件在异常退出时会弹出一个发送错误报告的对话框,如下图所示。
我想大多数人看到这个对话框时都会直接关掉。如果用的是AUTOCAD,不发的话我觉得可以。如果用的是国产CAD,建议大家还是将现象描述一下,哪怕在后面加上一句发牢骚的话,最好把错误报告发出去。
错误报告会帮助CAD厂商去发现、分析并解决一些内部测试中未发现的BUG,对提升CAD软件的稳定性很有帮助。如果CAD厂商通过分析发现了死机的原因并解决了这个问题,那你使用下一个版本时就不会遇到相同的问题了。
三、安装、注册、卸载导致的异常退出
如果CAD软件在启动或使用简单基本功能时就异常退出,这很有可能是CAD软件或操作系统本身有问题了。
1、启动时闪退
有时CAD安装完后启动就闪退,有时之前用得好好的,突然有一天打开软件就异常退出,没有任何错误提示,重新卸载安装也是如此,安装其他版本还是退出,遇到这种情况就需要检查一下许可服务是否被阻止,许可文件是否被损坏,具体操作请参看下面的文章。
2、启动或使用时提示错误退出
有时在启动或错误退出时有比较明确的信息,会告诉我们哪个文件出错,如下图所示。
这些错误对话框的标题或内容中都出现了ARX程序文件名,我们可以首先搜一下对话框中提示的文件,看是否是缺少此文件或此文件损坏,如果单独拷贝此文件无法解决问题,就需要修复或重新安装CAD。
3、现象和提示不明确的异常
如果出现跟文章开头那样的截图,对话框没有任何有价值的信息,如果与图纸无关,只是偶尔出现,重新启动CAD后正常,可以暂时忽略。如果确认与图纸无关,还反复出现的话,只能考虑从CAD程序和系统上找原因,可以按照下面顺序处理一下:
首先,可以先将当前用户的临时文件夹(%temp%)删空(至少将与CAD相关的文件删掉,例如类似acad.err这样的文件)
检查一下C盘是否有空间,C盘和CAD软件所在磁盘是否有坏道。
确认硬盘和临时文件夹没有问题后再启动CAD,可以尝试恢复安装时的配置试试。
如果CAD还不正常,那就只能修复或重新安装CAD软件试试。
如果上述方法都试了,还不行,那你可以换个CAD版本装一下试试。
四、因为CAD病毒导致的退出
之前有多位网友反映打开图纸的时候卡顿,然后过了一段时间打开文件就会退出了,最后发现这种情况都是因为CAD病毒引起的,看到的病毒有200MB、900MB的,有网友说还看过几个G大小的,LISP程序就是简单的文本文件,几百兆表示病毒代码达到几百甚至上千万行,在打开文件时要加载运行这么长的程序,退出也不奇怪。遇到这种问题首先到网上下载一个CAD病毒专杀工具先查杀一下,不行自己手动将相关文件删除后再重新安装CAD。
五、如何能减少CAD异常退出的几率?
当使用CAD退出时,需要自己尝试寻找规律,然后通过规律来判断问题所在,再对症下药,才能找到解决办法。当然,对于普通的CAD使用者来说,这种规律不太容易找出来,而且有些异常退出是随机性的或错误累计出来的,也许这次操作退出了,下次同样的操作就不退出了。在找不到规律的时候,唯一可以做的就是养成良好的习惯,防患于未然。可以做的主要有下面几点:
1、不要在机器上安装过多的软件或反复卸载安装软件,定期整理系统,使操作系统始终保持在健康高效的状态。如果要经常处理超大图纸,赶紧升级到64位,多加点内存。
2、不要在CAD上安装过多的插件,尤其是一些个人开发的小工具,使CAD软件本身保持一个健康状态。有些工具代码水平比较低,没有经过严格测试,运行中也会出现异常退出的现象或者生成错误数据;现在还有人专门开发CAD病毒,虽然危害不大,但非常讨厌,所以安装工具的时候要慎重。
3、减少图纸在不同软件间和不同版本的转换次数,不要反复改变文件的版本,减少出现错误数据的机会。如果必须要转换的话,建议转换后的图纸直接用修复打开(RECOVER)或打开后进行核查(AUDIT),将能修复的错误先处理掉,降低出现异常的概率。
写是写了一大堆,但估计也不一定能解决你遇到的CAD异常退出问题,但还是希望能对有些人有帮助吧!