|
|
ObjetArx2004+VS20024 x% z/ S& p6 P/ r8 @2 w6 Q- J
前提:安装好以上两种软件
+ {$ a1 P+ G9 ~$ N; l创建步骤:
; m6 H9 b, f9 J2 C3 p, w) D1. 新建项目) Z' f' I) t: L3 H# B
Visual C++项目->选择ObjectARX/DBX/OMF->键入"Demo"项目名称
( X/ r: ^& F. b% X. AMFC Support中勾选Enxtension Dll->using MFC Shared DLL,其他取默认值' j. L; ?6 h* y! p ?8 i
2. 删除文件) m, f; `* j4 F* L( ]# G
在“解决方案资源管理器”中删除向导生成的acrxEntryPoint.cpp,DocData.cpp,DocData.h文件3 \+ `; \; O# A! e2 F2 A+ R
同时可以在文件夹下彻底删除文件,后续步骤并不需要用到这3个文件。 如果删除的话,注意需要修改StdAfx.h文件代码,在此文件最末尾:7 V' _, P6 Z+ i& Z5 p& J& \
#include "DocData.h" //----- Your document specific data
. T9 k0 K8 B8 G2 I& i$ L- h+ Pextern AcApDataManager DocVars ;0 t* X3 M" f. H3 j2 K
注释掉上面两行代码。9 |- C/ M: q( N; D% \
3. 添加Demo.h文件- r9 X3 }5 m$ C
同时在Demo.h文件中加入代码# n$ l# {) g' M7 h. o/ r) a q
#pragma once
6 K) }+ h1 J1 O' p1 g- N6 A3 G( ]#include"resource.h"7 P) Z& a# M( n k
3. 创建一个普通对话框,基于CDialog类,并生成类CDlgDemo0 T! K! V: u! D
4. 打开Demo.cpp文件,对这个文件要进行比较多的操作
# ]. O# x# X2 } i I注释掉"AFX_EXTENSION_MODULE DemoExtDLL ={ NULL, NULL };"这一句/ ~/ m+ V J* R6 x6 P# W$ M
·添加#include "DlgDemo.h"头文件
0 U5 l1 M, I9 }·添加函数DlgDemo(),具体见附件源文件代码6 \* C6 y3 c6 z" t# Z1 P
·添加initApp(),unloadApp()0 y6 s" P) k/ [# Q8 y r
注释掉DllMain中的"_hdllInstance =hInstance ;
& s+ P( {' o+ y/ x, k·在文件的末尾添加acrxEntryPoint()
5 H/ _, x5 q) X% k0 G) x8 s$ s这里需要提醒一下的是关于AC_IMPLEMENT_EXTENSION_MODULE(DemoDLL)的使用1 N8 L6 O% Q ?& G
涉及到了Dll资源的使用,所以DemoDLL在这里相当于一个连接AutoCAD和MFC的纽带,: O2 S& Q+ ]; E5 s; s4 i. W
保持整个Demo.cpp中,DemoDLL的一致" T; 5 w! N5 a2 V8 j) b9 M& s3 R: _
5. 项目设置# Y4 P5 N3 r# @- p) t6 T' N
菜单"工具"->"选项"->"项目"->"包含文件"->添加ObjectARX2004的inc目录& a+ K" {% F* l0 o2 @5 y
->"库文件"->添加ObjectARX2004的lib目录! w; `2 [& j1 w, Y
6. 生成解决方案
! i3 z0 g8 [( W% _5 C2 F( M o一切pass,有2个警告rxapi.lib(libinit.obj) : warning LNK4099: 未发现 PDB“msvc.pdb& u1 f |' w: Y
acedapi.lib(acedstub.obj) : warning LNK4099: 未发现 PDB“corehdr.pdb
+ w4 r g; \$ i; w! H2 |不用去管它,ObjectARX开发文档已经说明了这个问题的存在,不影响使用)
. I. i$ m+ |$ k# [7 K, g
: t5 q8 k" }# L* _3 R7 W { ~至此为止,我们已经生成了MarkDemo.arx,在Debug目录下可以找到,下面将继续介绍如何在# B* ^" f+ ~+ y- [# @& G
AutoCAD2004菜单中自动加载Demo对话框 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|