码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-10-06 22:07:12      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:dal   app   需要   return   abc   ppm   编译器   tco   virt   

一、本节课程

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

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

标签:dal   app   需要   return   abc   ppm   编译器   tco   virt   

原文地址:https://www.cnblogs.com/yunyouxy/p/objectarx_rumen.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!