2、Arx二次开发创建第一个应用程序

一、本节课程

Arx二次开发创建第一个应用程序

二、本节要讲解的知识点

1、手动创建ARX的应用的步骤。

2、应用向导创建ARX应用程序的步骤。

三、具体内容

1、需求:创建一个Hello World应用程序,在AUTOCAD的命令行输出“Hello World”。

2、手动创建一个ARX应用程序:C++开发ARX应用程序,实际上我们ARX应用程序就是一个动态链接库,它的后缀只是没用.DLL来表示而已,是用.ARX 来表示的。与常规的DLL程序一样,ARX程序在AUTOCAD调用时加载,与AUTOCAD本身的代码是相互独立的。

设置编译器的参数,包括代码的生成方式。

设置连接器的参数,包括输出文件的名称,添加链接库文件等。

新建一个DLL文件,引用ARX API的头文件和库文件,然后设置编译器参数和连接器参数。将生成文件的后缀改为“.DLL”文件即可。在代码里面创建两个函数分别用户初始化和卸载ARX程序。 void InitApp(); void UnloadApp();

具体请参见收费课程C++ ARX开发的免费试听部分。

3、向导创建一个ARX应用程序:

1ObjectARX应用程序:在AUTOCAD中调用。

2ObjectDBX应用程序:在所有的REALDWG宿主程序中调用(包括AUTOCAD,自定义实体开发的时候,可以创建此类程序。

3Console程序:高版本的AUTOCAD出现的一种开发方式。(AUTOCAD2013以后出现的一种新的开发方式),将AUTOCAD Console应用程序放置在服务器端(比如说服务器端自动打印),特点就是不需要交互,运行速度很快。

4、向导自动帮我们生成了一些头文件和源文件。其中acrxEntryPoint.cppARX程序的入口点。

 1ARX模块加载时执行的函数

virtual AcRx::AppRetCode On_kInitAppMsg (void *pkt) {

AcRx::AppRetCode retCode =AcRxArxApp::On_kInitAppMsg (pkt) ;

      //通常需要加入的代码,在这里可以放入软件锁检测的代码。

return (retCode) ;

}

   2ARX模块卸载时执行的函数

virtual AcRx::AppRetCode On_kUnloadAppMsg (void *pkt) {

AcRx::AppRetCode retCode =AcRxArxApp::On_kUnloadAppMsg (pkt) ;

return (retCode) ;

}

5、此外向导还创建了命令的模板,我们可以根据模板来定义自己想要定义的命令:MyCommand。

1)第一处修改

ACED_ARXCOMMAND_ENTRY_AUTO(CArxProject2App, yunyouMyGroup,CommandABC, CommandABC, ACRX_CMD_MODAL, NULL)

2)第二处修改

static void yunyouMyGroupCommandABC () {

}

 

6、在命令中实现一个HelloWorld的打印。

static void yunyouMyGroupCommandABC () { acutPrintf(TEXT("Hello world!"));}

四、总结

1、手动创建ARX的应用的步骤请参见收费课程的试听部分。

2、应用向导创建ARX应用程序的步骤。

3、如何在ARX中添加命令和命令实现函数。

4、创建第一个应用程序Hello World

posted on 2018-10-06 21:32  云幽学院  阅读(1278)  评论(0编辑  收藏  举报