在加载基于AutoCAD二次开发的应用程序时,我们通常都希望进行一些初始化工作,例如显示Logo图片、版权信息、加载菜单、工具条等,而在卸载应用程序时希望进行一些清理工作,释放程序所占用的资源。在使用C++基于ObjectARX开发时,在入口函数acrxEntryPoint中就可进行如上操作,而在C#开发的ObjectARX.NET程序集中,则可用如下方法实现。

1.       从接口IExtensionApplication派生一个类,该接口在Autodesk.AutoCAD.Runtime命名空间中。

2.       为类添加扩展应用程序集属性标识

[assembly:ExtensionApplication(typeof(命名空间.类名))]

3.       实现IExtensionApplication接口的两个方法

        void Initialize();

        void Terminate();

4.       Initialize方法中实现应用程序的初始化操作

5.       Terminate方法中实现程序结束清理工作。

C#例码:

using System;

using System.IO;

using System.Diagnostics;

using System.Reflection;

using Autodesk.AutoCAD.Runtime;

using Autodesk.AutoCAD.ApplicationServices;

 

[assembly:ExtensionApplication(typeof(lss.App))]

 

namespace lss

{

       public class App : IExtensionApplication

    {

       public void

       Initialize()

       {

           // 初始化我的应用程序

           …….

       }

      

       public void

       Terminate()

       {

            //清理我的应用程序

       }

    }

}

posted on 2009-04-22 00:00  卢世松  阅读(654)  评论(0)    收藏  举报