热门技术支持历史记录,或者AutoCAD为什么要删除代理对象?



免责声明

本文的目的不是抹黑软件。 本文仅用于提供信息,旨在保护最终用户,在某些情况下,他们在AutoCAD中工作时可能会丢失其数据。

前言


SPDS扩展或SPDS模块是Autodesk开发的AutoCAD系列产品的附加组件。

SPDS GraphiCS是一个跨平台应用程序,旨在开发由CSoft Development开发的设计和技术文档。

nanoCAD SPDS与GraphiCS SPDS相同,但是在Nanosoft的nanoCAD Plus平台上。

故事


收集了早间邮件后,我遇到了用户的技术支持请求。 这封信的主题基本上解释了问题的本质:“ nanoCAD SPDS对象不在AutoCAD中显示”。 正如预期的那样,文件,屏幕截图和用户操作的详细描述都附在了这封信上。 简而言之,上诉的实质如下:用户在nanoCAD SPDS中创建了一个项目,并将其转移给承包商。 在AutoCAD中打开此文件的承包商看不到SPDS对象。

有经验的用户会立即说,承包商很可能根本没有打开代理对象的显示,因此看不到在专用应用程序中创建的数据。 但是,事实证明,一切都不是那么简单...

研究问题


首先,在nanoCAD SPDS中打开文件,并检查proxyshowproxygraphics变量的状态。 一切正常,两个值都等于一,并且文件正确显示。


proxyshow-用于控制图形中代理对象的显示的变量;

proxygraphics-一个变量,它控制图形中代理对象的存储。
然后,我们在AutoCAD中检查相同的文件。 启动文件时,会出现一条弹出消息,询问您如何处理代理。



选择显示代理图形选项,然后单击确定 。 一切正常,在我的机器上AutoCAD正确显示了所有nanoCAD SPDS对象



确信我知道问题的原因,请关闭文件并向用户发送书面通知,承包商最可能在AutoCAD中具有隐藏的代理对象。 我建议直接从AutoCAD命令行检查proxyshow变量的值(应等于1)。

意外发现


第二天早上,我从用户那里得到一个答案:变量的值等于1,但是对象仍然不显示。 顺便说一下,承包商的工程图看起来像这样(不是平面图,而是仅显示尺寸和几个线段):



我开始弄清楚为什么在AutoCAD中可以以不同的方式显示具有相同变量值的相同文件。 是操作系统吗? 在AutoCAD版本中? 也许用户还有其他应用程序? 通常,为了了解配置的差异,我要求用户提供更多数据。

在再次仔细检查了用户的资料之后,我在屏幕截图之一中注意到了一个很小但很重要的细节。 在AutoCAD承包商的屏幕快照中,安装了SPDS模块或SPDS扩展模块(也称为SPDS扩展模块)。



我的配置是纯AutoCAD,没有任何附加组件-实际上,这是唯一的线索。 在没有等待用户提供其他数据的情况下,我开始进一步研究。

从Autodesk官方网站下载SPDS模块后,将其安装在我的AutoCAD 2018版本中。接下来,我启动用户文件并查看通常的消息。 在这种情况下,甚至在关闭代理对象信息窗口之前,nanoCAD SPDS对象也会在AutoCAD中显示。



想到“我的调查陷入僵局”,我单击“ 确定”按钮,并准备采取进一步措施。 片刻之后,所有代理对象都消失了,从用户的吸引力中我得到了与承包商相同的结果。



我重新启动AutoCAD并再次打开此文件-图片重复。 代理对象将从文件中消失,尽管proxyshow变量的值为1。 这很奇怪。

将在AutoCAD中打开的文件保存在从用户收到的文件旁边,并附加_proxy文件名,然后比较它们的大小。



AutoCAD中保存的文件大小减少了10倍,但我决定在原始应用程序-nanoCAD SPDS中打开它。



现在,在nanoCAD SPDS中,我观察到与使用SPDS模块在AutoCAD中打开文件时的图片相同的图片。 事实证明,保存到AutoCAD之后,用户文件丢失了所有代理对象。

删除其他人的代理非常难看。 我决定使用我自己的Autodesk应用程序中的代理来检查此错误。 我在网络上的Civil 3D和Advance Steel应用程序中找到了几个文件,并重复上述实验,打开带有代理对象的图形。 在所有情况下,启动这些文件后,都会删除代理图。 事实证明,亲爱的AutoCAD使用SPDS扩展模块删除了所有代理。

我决定回滚到旧的AutoCAD配置并从Autodesk删除SPDS模块,以便再次检查具有代理对象的文件的操作。 奇怪的是,它们又开始正常地坚持了下来。 从我所看到的一切,我得出最后结论:
安装了SPDS模块的AutoCAD将删除dwg文件中的所有代理对象。

解决方案


只能假设有多少用户由于SPDS Extension应用程序的错误而丢失了数据,但是本文的目的不仅是为了警告用户。 最主要的是保存他们的项目。 因此,我想分享这个问题的解决方案。

1)通过控制面板完全删除SDPS Extension应用程序。



从根本上讲,但是所有代理都可以保存。

2)在AutoCAD平台下安装启动器。

并非适用于所有代理对象,因为并非所有应用程序都具有AutoCAD的启用码。 例如,对于nanoCAD SPDS / SPDS GraphiCS产品,您可以下载Enabler for AutoCAD 。 安装此启用码后,SPDS对象将不再是代理,并且不再从AutoCAD中删除。

小费


我敦促用户注意并始终保留其项目的多个副本。 例如,nanoCAD在打开dwg文件时,会立即以操作系统的扩展名dwg.original复制该文件; 因此,您将始终拥有源文件的备份。



如果您使用其他CAD系统,请不要偷懒,手动制作项目的多个副本,以防万一。

照顾好您的dwg文件和良好的设计!
谢尔盖· 斯皮林( Sergey Spirin)
JSC Nanosoft

Source: https://habr.com/ru/post/zh-CN424731/


All Articles