|
ObjetArx2004+VS2002
; Z! k! S6 h+ ]9 i% |8 E7 ?( d9 |前提:安装好以上两种软件
9 \$ K' g( O. }# Z创建步骤:
) @% r$ p) o& B O/ J Y1. 新建项目
6 D/ r( a* @9 S; O1 PVisual C++项目->选择ObjectARX/DBX/OMF->键入"Demo"项目名称
: P. |. S2 J. K% }MFC Support中勾选Enxtension Dll->using MFC Shared DLL,其他取默认值' ?" h4 Q) ` `; J1 o) ]$ B" m: \
2. 删除文件! b% E. \9 q5 z# S. o& _, v5 K
在“解决方案资源管理器”中删除向导生成的acrxEntryPoint.cpp,DocData.cpp,DocData.h文件
9 [2 H* ~& B& R7 g1 {% k- q+ }同时可以在文件夹下彻底删除文件,后续步骤并不需要用到这3个文件。 如果删除的话,注意需要修改StdAfx.h文件代码,在此文件最末尾:
% \+ K3 _$ d, E8 F" l$ h#include "DocData.h" //----- Your document specific data
0 K* s/ [; Q- H, ^extern AcApDataManager DocVars ;
5 B/ h. _7 x9 o' r5 ]& ?9 K注释掉上面两行代码。
+ n; s( c. l; P3. 添加Demo.h文件
2 s/ _& X/ P0 z$ v# U同时在Demo.h文件中加入代码
9 m# d( \* }% U0 i3 S #pragma once
8 U2 \- ]. I9 D: X, z#include"resource.h"* o3 x& Q3 K* f9 c! ]: i+ X) q V; U; Z
3. 创建一个普通对话框,基于CDialog类,并生成类CDlgDemo
% e. q' D9 k, i4. 打开Demo.cpp文件,对这个文件要进行比较多的操作
* ]8 f+ F6 W2 \注释掉"AFX_EXTENSION_MODULE DemoExtDLL ={ NULL, NULL };"这一句6 E& S" B* U1 ]6 t$ b% u+ c
·添加#include "DlgDemo.h"头文件
7 }7 h, ~& h2 v( E·添加函数DlgDemo(),具体见附件源文件代码$ e8 ]2 W+ H) G- c- P8 n5 U! Z H
·添加initApp(),unloadApp()' ?1 t4 b6 d- N! H2 d7 v
注释掉DllMain中的"_hdllInstance =hInstance ;% C! e- S* G z& W
·在文件的末尾添加acrxEntryPoint(); ^4 r; }/ Z) _. T) J
这里需要提醒一下的是关于AC_IMPLEMENT_EXTENSION_MODULE(DemoDLL)的使用( S! `1 _' r. K1 W
涉及到了Dll资源的使用,所以DemoDLL在这里相当于一个连接AutoCAD和MFC的纽带,* h7 O2 ~' O6 H; D1 K7 ^) D" P T
保持整个Demo.cpp中,DemoDLL的一致" T; 7 W* ~) C% B" M0 T
5. 项目设置
9 o: i, H6 k( c t- N+ r$ Q! `& |菜单"工具"->"选项"->"项目"->"包含文件"->添加ObjectARX2004的inc目录4 e8 q6 L+ O2 R
->"库文件"->添加ObjectARX2004的lib目录
, b2 L: t" v2 R3 a x0 a6 }6. 生成解决方案9 I6 D8 D; k$ M: a) G1 S T
一切pass,有2个警告rxapi.lib(libinit.obj) : warning LNK4099: 未发现 PDB“msvc.pdb
) }( b2 N; k# H5 d$ wacedapi.lib(acedstub.obj) : warning LNK4099: 未发现 PDB“corehdr.pdb: M1 j8 O q0 v: x
不用去管它,ObjectARX开发文档已经说明了这个问题的存在,不影响使用)
) b2 Z8 v$ V* o# g% Y+ C2 j( C1 C/ {7 j; S% |1 s6 p
至此为止,我们已经生成了MarkDemo.arx,在Debug目录下可以找到,下面将继续介绍如何在; b% G$ K$ Y" Y" y; E/ |7 k
AutoCAD2004菜单中自动加载Demo对话框 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|