2023年12月7日发(作者:)
AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
AutoCAD2013二次开发C++语言的第一个ObjectArx2013程序HelloWorld
前言
AutoCAD2013二次开发C++语言的ObjectArx SDK开发包,自ObjectArx2013开始,不再支持Microsoft Visual Studio中的ObjectArx Addin工具条。
配套的Visual Studio 2010版的Objectarx Wizards 2013安装后,ObjectArx嵌入工具栏并不存在,常用的ObjectArx Command命令按钮不存在。
然而,网络上大部分使用Objectarx Wizards向导生成HelloWorld程序,均是基于ObjectArx Command命令按钮来编写的。
我的电脑是64位Win10,安装Visual Studio 2010和AutoCAD2013-64位,编写第一个HelloWorld困扰了我很长的时间。
编写此文,希望能帮助到有同样困惑的朋友。
1 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
第一步 安装配置ObjectArx2013和Objectarx Wizards 2013
此部分在网络上有大量的资料可查,这里不再赘述。
值得提醒的要点有:
Studio 2010/AutoCAD2013/ObjectArx2013/Objectarx
Wizards 2013这四个程序的版本必须配套。
10-64位系统在安装Objectarx Wizards 2013时应当选择兼容模式。
3.安装Objectarx Wizards 2013时,需要指定ObjectArx2013和AutoCAD2013的文件夹。64位系统的AutoCAD2013一般安装在Program Files目录,而Objectarx Wizards 2013使用兼容模式安装时,常常默认目录为Program Files (x86),这时候不要直接按下一步,注意修改好实际路径。
文件有错误,产生“未能加载项目文件。给定编码中的字符无效。第1行,位置1”问题。
需要将第一行的
锘??xml version="1.0" encoding="utf-8"?>
改为
修改文件的地址如下,共两个文件。找不到的,可搜索
C:Program Files (x86)AutodeskObjectARX2013
2 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
C:Program Files (x86)AutodeskObjectARX 2013
第二步 使用Objectarx Wizards 2013向导新建项目
打开Visual Studio 2010,依次点击文件-新建-项目
如果Objectarx Wizards 2013正确安装,可以在Visual C++项看到AutoDesk。
选择AutoDesk中的ObjectArx/DBX Project。
名称/位置/解决方案3项按默认或按需要修改。我在这里直接默认。
3 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
按确定后弹出Wizard向导设置对话框。
在Your Registered Develop Symbol项填入标志,这里我填AAA。
注意我填的这3个AAA,后面会出现。
然后直接按Finish完成。
4 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
第三步 找到文件
如无意外,可以在 解决方案资源管理器-源文件 中看到文件。
5 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
如果看不到解决方案资源管理器,可以在视图菜单中调出来。
第四步 修改文件
打开文件如下。可以在下方看到字样。
6 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
继续往下查看,找到static void AAAMyGroupMyCommand ()这一行。
注意看到3个大写的AAA,这是我在前面填写的标志。
同时注意到// Put your command code here这一行注释,翻译成中文是“请将命令代码填写在这里”。
7 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
将acutPrintf(_T("nHello World!"));填写到空白处,如下所示。
这行代码表示要在CAD命令栏打印Hello World!信息。
这样,所有的代码修改已经完成了,可以直接编译了。
在编译之前,我们继续查看文件的末尾处,这里有需要注意的地方。
找到ACED_ARXCOMMAND_ENTRY_AUTO这一行。
1.注意到3个大写的AAA,留心其后的AAAMyGroup, MyCommand及前面static void AAAMyGroupMyCommand ()的关系。
2.注意MyCommandLocal,这是等会在AutoCAD2013要输入的命令。
第五步 编译程序
因为我的AutoCAD2013是64位版本的,在Visual Studio 20108 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
上方将编译平台改为x64。
点击菜单-生成-生成解决方案。
留意下方的输出信息,如果看不到可以将信息栏拉高。
9 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
如果找不到,可以在 菜单-视图-输出 里重新显示。
如无意外,可以看到生成成功的信息。
10 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
第六步 加载程序
在解决方案资源管理器中,右击项目,在右键菜单中找到,在Windows资源管理器中打开文件夹,点击。
11 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
Visual Studio 2010会打开本项目所在的Windows目录。
我们生成的目标文件不在这里,往上一级目录查看。
打开x64目录,一直到.arx文件出现。
12 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
打开AutoCAD2013,可以通过以下两种方式加载程序。
1.使用APPLOAD命令。
CAD绘图区域。 2.直接拖动到若成功加载,将在命令栏返回文件路径。
13 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
输入MYCOMMANDLOCAL命令,命令栏中返回Hello World!字样。
表明程序编译成功。
请注意这个MYCOMMANDLOCAL命令。
并及上文ACED_ARXCOMMAND_ENTRY_AUTO这一行联系起来。
14 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
第七步 卸载程序
在ObjectArx2013开发中,我们经常需要修改和调试程序。若.ARX程序程序文件已加载,Visual Studio 2010重新编译生成的时候会失败,提示文件已占用,不能修改等等。
这时我们需要在AutoCAD中卸载该程序。
在AutoCAD中输入APPLOAD命令,打开 加载/卸载应用程序 对话框。
15 / 16 AutoCAD2013二次开发C语言第一个ObjectArx2013程序HelloWorld
在已加载的应用程序列表中找到刚刚加载的,点击卸载。
这样,Visual Studio 2010就可以重新编译该程序了。
全文完。
16 / 16


发布评论