百思论坛
                                                                  -工程科技交流平台

百思论坛 » 三维CAD软件 » 三维CAD二次开发 » AutoCAD二次开发配置入门1-生成Arx文件步骤


2007-6-20 00:05 gxboylcw
AutoCAD二次开发配置入门1-生成Arx文件步骤

做了几个月的AutoCAD ObjectARX二次开发,一直想写点入门的东西,帮助一下后来者。这里面的东西,对老手们来说没有参考价值,忽略就行了希望对新手能有所帮助<br />ObjetArx2004+VS2002<br />前提:安装好以上两种软件<br />创建步骤:<br />1. 新建项目<br />Visual C++项目-&gt;选择ObjectARX/DBX/OMF-&gt;键入&quot;Demo&quot;项目名称<br />-&gt;MFC Support中勾选Enxtension Dll-&gt;using MFC Shared DLL,其他取默认值<br />2. 删除文件<br />在“解决方案资源管理器”中删除向导生成的acrxEntryPoint.cpp,DocData.cpp,DocData.h文件<br />同时可以在文件夹下彻底删除文件,后续步骤并不需要用到这3个文件。 如果删除的话,注意需要修改StdAfx.h文件代码,在此文件最末尾:<br />#include &quot;DocData.h&quot; //----- Your document specific data<br />extern AcApDataManager DocVars ;<br />注释掉上面两行代码。<br />3. 添加Demo.h文件<br />同时在Demo.h文件中加入代码<br />#pragma once<br />#include&quot;resource.h&quot;<br />3. 创建一个普通对话框,基于CDialog类,并生成类CDlgDemo<br />4. 打开Demo.cpp文件,对这个文件要进行比较多的操作<br />·注释掉&quot;AFX_EXTENSION_MODULE DemoExtDLL ={ NULL, NULL };&quot;这一句<br />·添加#include &quot;DlgDemo.h&quot;头文件<br />·添加函数DlgDemo(),具体见附件源文件代码<br />·添加initApp(),unloadApp()<br />·注释掉DllMain中的&quot;_hdllInstance =hInstance ;&quot;<br />·在文件的末尾添加acrxEntryPoint()<br />这里需要提醒一下的是关于AC_IMPLEMENT_EXTENSION_MODULE(DemoDLL)的使用<br />涉及到了Dll资源的使用,所以DemoDLL在这里相当于一个连接AutoCAD和MFC的纽带,<br />保持整个Demo.cpp中,DemoDLL的一致<br />5. 项目设置<br />菜单&quot;工具&quot;-&gt;&quot;选项&quot;-&gt;&quot;项目&quot;-&gt;&quot;包含文件&quot;-&gt;添加ObjectARX2004的inc目录<br />-&gt;&quot;库文件&quot;-&gt;添加ObjectARX2004的lib目录<br />6. 生成解决方案<br />一切pass,有2个警告rxapi.lib(libinit.obj) : warning LNK4099: 未发现 PDB“msvc.pdb”<br />acedapi.lib(acedstub.obj) : warning LNK4099: 未发现 PDB“corehdr.pdb”<br />不用去管它,ObjectARX开发文档已经说明了这个问题的存在,不影响使用<br />#至此为止,我们已经生成了MarkDemo.arx,在Debug目录下可以找到,下面将继续介绍如何在<br />AutoCAD2004菜单中自动加载Demo对话框











</td>

2010-7-27 21:16 YangtseDing
多谢~~

页: [1]