升级AutoCAD Python脚本

2024-06-28 12:27:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我有python脚本,如果AutoCAD应用程序处于打开状态,它可以通过comtypes与AutoCAD文档交互并控制AutoCAD文档。它们在AutoCAD Mechanical 2016中运行良好。我们最近升级到了AutoCAD Mechanical 2018,车轮已经脱离了轨道

下面一行,直接在导入之后(为了清晰起见,我重写了它以包含包名)

app = comtypes.client.GetActiveObject("AutoCAD.Application")

…现在失败,并显示错误消息:

COMerror: (-2147467262, 'No such interface supported', (None, None, None, 0, None))

这显然破坏了一切——没有COM,没有接口。很明显,与com对象相关的版本之间发生了一些变化,但我不确定是什么,或者如何在这里指定正确的对象

(我会注意到,我已经在两个版本的AutoCAD中测试了脚本,都使用了相同的测试图形,并且该图形实际上是以AutoCAD 2013格式保存的,这是出于非技术原因。因此,不太可能与文件本身有关。)


Tags: 对象文档版本脚本clientnoneapp应用程序