确实,API 确实很大,而且某些功能的文档记录也很差。我发现上手很困难,但是一旦我熟悉了核心概念和功能,我就开始非常喜欢使用它,因为 API 非常强大且一旦“掌握”就易于使用。我不确定您检查了哪些来源,但我从这个 Developer Documentation开始。向下滚动到培训实验室。我建议您至少通读 ObjectARX 和 .NET 培训实验室。花几天时间在 .NET 实验室工作,因为它会为您节省无数小时。
至于调试,下面的设置应该为您提供最有效和最高效的方法(这里我使用 VS 2015 和 AutoCad 2015)。在项目属性中,在“调试”选项卡下,您的设置应如下所示:
- 选中“启动外部程序:”并输入 AutoCad 可执行文件的路径。这适用于其他版本的 AutoCad。
- 在“命令行参数:”字段中,输入
/nologo
. 这将显着加快 AutoCad 的启动速度。

要将您的 dll 自动加载到 AutoCad中,您可以通过注册表(我的首选方式)或通过 acad20xxdoc.lsp 或 acad.lsp 来完成(AutoCad 将默认为您打开的每个文档或 AutoCad 启动时分别运行这些脚本)。您可以在这篇文章中找到详细信息。
现在按F5将启动 AutoCad 并加载调试器。您现在可以像处理任何其他代码一样单步执行代码行。在代码的开头放置一个断点,然后在 AutoCad 中执行您的命令。你的断点应该被击中。
另外: /nologo
也可以添加到 AutoCad 的桌面快捷方式,为用户加速 AutoCad。它可以添加到快捷方式属性中的“目标:”字段中。IE"C:\Program Files\Autodesk\AutoCAD 2015\acad.exe" /nologo
注意:一个可能的问题!确保您的项目引用的任何 AutoCad dll 的属性设置为:
- 嵌入互操作类型 -> False
- 复制本地 -> 错误。还要确保
acmgd.dll
在您的 Debug/Release 目录中没有 AutoCAD dll(即或任何名称以“ac”开头的 dll)。删除您找到的任何内容。不这样做会导致难以追查的错误和崩溃。