Microsoft Visual Studio 可以在同一项目中同时使用本机 .NET 和 COM 接口。通过利用 COM 互操作,可以迁移可能用 Visual Basic 6 或 VBA 编写的现有代码,而不必完全重写它。要从在 Microsoft Visual Studio 中创建的项目访问 AutoCAD 自动化对象,请创建对以下文件的引用:
注意:前面提到的类型库也作为 ObjectARX SDK 的一部分提供。
这些引用将使以下主要互操作程序集可用:
互操作程序集位于全局程序集缓存中;它们将自动化对象映射到其 .NET 对应项。 引用类型库后,应将 和 命名空间导入到代码模块中,这些模块将利用库中定义的对象,如以下示例所示:Autodesk.AutoCAD.InteropAutodesk.AutoCAD.Interop.Common
可以根据库中定义的对象声明变量,如以下示例所示:
互操作程序集有助于从 VBA 过渡到 VB.NET。但是,为了充分利用 .NET 和 AutoCAD .NET API 提供的所有功能,您需要重写现有的 VBA 代码。 可以使用以下对象中的以下属性从相应的 .NET 对象获取指向 COM 对象的指针:
可以使用静态函数从 .NET 对象获取 COM 对象。例如,从 COM 数据库对象获取 .NET 数据库对象。FromAcadXxxDatabase.FromAcadDatabase 创建和引用应用程序AutoCAD .NET 应用程序可以使用与 AutoCAD 自动化项目相同的类型库 (acax24enu.tlb)。类型库位于 <drive>:\Program Files\Common Files\Autodesk Shared 中。 AutoCAD .NET 应用程序还对 、 和 函数使用与版本相关的相同 ProgID。CreateObjectGetObjectGetInterfaceObject 可以使用产品 ProgID 创建 AutoCAD 应用程序的新实例 (),并指定版本的主要和次要编号,以将应用程序限制为特定版本或彼此二进制兼容的所有版本。"AutoCAD.Application" 例如
注意:您必须安装尝试创建其实例的相应版本。
如果从进程内 DLL(类库)使用 ActiveX/COM,并且想要引用 AutoCAD 应用程序对象,则可以使用特性。Autodesk.AutoCAD.ApplicationServices.Application.AcadApplication |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-7 20:07
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.