日期:2014-05-16 浏览次数:20482 次
为了支持多平台,AutoCAD实现了大分离,我们两年前已经介绍了这个概念,但是很多人对怎么实现大分离还是不甚了解。我们开发部的吴忠写下了这篇教程,我只是负责发表一下,方便大家阅读。
附带有经典例子Polysamp的移植录像,在本文的最后提供了下载链接。
目录
1 概要
2 开发前提
3 Dbx/Arx 模块移植步骤
4 附录
Bundle 格式和简单说明
概要
AutoCAD 易只支持 Dbx 和 Crx 模块,不支持Arx 模块,第三方应用需要把他们的应用程序先拆分成Dbx/Crx/Arx 模块或者Crx/Arx 模块
Dbx模块中一般是包含 database相关的,比如自定义实体。该模块会链接到 acdb**.dll。Crx 模块中一般是包含一些 In-Canvas 相关的 UI,比如command 等等。当然,所有Dbx 中的内容也可以包含在Crx中。该模块会链接到 accore.dll。
Arx
模块一般是包含一些 Out-Canvas相关的UI,比如 dialog,菜单等。该模块会链接到acad.exe。 同样的,所有Dbx,Crx中的内容也同样可以包含在 Arx模块中。但是如果第三方应用需要能被AutoCAD易支持,那么第三方应用需要把Out-Canvas UI相关的代码都拆分到 Arx 模块中,因为在 AutoCAD 易中,所有Out-Canvas UI 相关的内容都需要用JavaScript重新来实现。
开发前提
2013 版本的 ObjectArx。
Dbx/Arx 模块移植步骤
1.
对于Dbx模块,我们不需要做任何处理。对于Arx