You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pyautocad调用AutoCAD绘图时出现COMError错误求助

解决pyautocad调用AutoCAD时的COMError问题

针对你遇到的COMError: (-2147352567, 'Exception occured.', (None, None, None, 0, None))错误,以下是几个实用的排查和解决方向:

  • 调整AutoCAD实例连接逻辑
    默认的pyautocad.Autocad()会尝试连接已运行的AutoCAD实例,但如果存在多个实例或连接异常,可尝试显式指定创建或连接:

    import pyautocad
    # 若没有运行的实例则创建新实例,同时确保实例可见
    acad = pyautocad.Autocad(create_if_not_exists=True, visible=True)
    

    另外,确保当前只有一个AutoCAD实例在运行,避免连接冲突。

  • 修正坐标参数格式
    AutoCAD的AddCircle方法要求三维坐标点,虽然pyautocad支持元组自动转换,但部分版本可能因缺少Z轴参数报错,可显式构造Point对象:

    center_point = acad.utils.Point(5, 5, 0)  # 添加Z轴坐标(默认0即可)
    circle = acad.model.AddCircle(center_point, radius)
    
  • 重新注册AutoCAD COM组件
    管理员身份打开命令提示符,执行AutoCAD的注册命令(替换为你的AutoCAD安装路径):

    "C:\Program Files\Autodesk\AutoCAD 2024\acad.exe" /regserver
    

    该命令会重新注册AutoCAD的COM接口,修复可能的注册损坏问题。

  • 统一运行权限
    同时以管理员身份运行AutoCAD和Python脚本,避免因权限不足导致COM调用失败。

  • 调整AutoCAD宏安全设置
    打开AutoCAD,依次点击「选项」→「系统」→「安全选项」:

    • 将宏安全级别设置为「中」或「低」
    • 勾选「信任对VBA工程对象模型的访问」(部分版本需开启)
      该设置可解除AutoCAD对外部COM调用的限制。
  • 检查版本兼容性
    确保pyautocad版本与AutoCAD版本匹配,执行命令更新pyautocad到最新版:

    pip install --upgrade pyautocad
    

内容的提问来源于stack exchange,提问作者burak ateş

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 19:00:59