arx .net api 的初始化与清除

    技术2022-05-11  40

    NET API的初始化与清除     在ObjectARX中,"acrxEntryPoint"函数是ARX程序的载入点,程序的初始化和清除均可在该函数中进行。而在.NET API中则首先需要将初始化代码封装在一个类中,同时该类需要压迫实现     IExtensionApplication接口。该接口包含Initialize与Terminate两个函数。其中Initialize负责加载程序时的初始化操作,Terminate则负责进行卸载程序时的清除操作。代码如下: namespace ARXExample { public class MyARX : IExtensionApplication { …… public void Initialize() { //初始化操作 } public void Terminate() {       //清除操作 } …… } } 同时,为加快加载速度,可在MyARX.cs的文件头加入以下语句: [assembly: ExtensionApplication (typeof (ARXExample.MyARX) ) ] [assembly: CommandClass (typeof (ARXExample.MyARX) ) ]     这样在加载程序时AutoCAD将直接通过MyARX中的Initialize语句进行初始化,同时注册MyARX中的命令。否则,AutoCAD将搜索dll中所有的类以找到实现IExtensionApplication接口的类进行初始化,如找不到则不进行初始化。同样,通过CommandClass属性,AutoCAD也会直接到MyARX类中搜索要注册的命令。当程序中包含的类数目较多时,通过ExtensionApplication和CommandClass这两个属性可显著地加快程序的加载速度。 

    最新回复(0)