|
ObjetArx2004+VS20025 A! d3 `0 P# F# m& A" Z( c' |
前提:安装好以上两种软件
/ Z+ x' |. x5 d3 U9 \创建步骤:3 G7 S( p$ S* A' h0 q! j
1. 新建项目
7 n8 A9 o. c- v7 Q) fVisual C++项目->选择ObjectARX/DBX/OMF->键入"Demo"项目名称2 v+ Q$ S& \0 J$ G
MFC Support中勾选Enxtension Dll->using MFC Shared DLL,其他取默认值, M. L+ j1 x8 g2 F8 U
2. 删除文件
* p* d, q, e9 Z) ^9 @- U在“解决方案资源管理器”中删除向导生成的acrxEntryPoint.cpp,DocData.cpp,DocData.h文件
3 {: S+ F# z) o N% D* t同时可以在文件夹下彻底删除文件,后续步骤并不需要用到这3个文件。 如果删除的话,注意需要修改StdAfx.h文件代码,在此文件最末尾:4 n% c; i2 @2 _
#include "DocData.h" //----- Your document specific data7 b" I; b0 _8 n" r; w1 }
extern AcApDataManager DocVars ;0 \/ [" j2 I7 ^9 F
注释掉上面两行代码。+ l1 E0 n; m' ?. a* t
3. 添加Demo.h文件
1 V$ k) w+ l5 J6 d9 Q同时在Demo.h文件中加入代码
% F' K' Z9 q$ j; }* q) J/ Y #pragma once
/ t! S% m8 D! r#include"resource.h"/ \! V& w$ B3 h4 T1 r" e
3. 创建一个普通对话框,基于CDialog类,并生成类CDlgDemo8 k! Q; S: D) L3 \% b
4. 打开Demo.cpp文件,对这个文件要进行比较多的操作
) |8 {! z( n0 R( c3 M注释掉"AFX_EXTENSION_MODULE DemoExtDLL ={ NULL, NULL };"这一句! q9 S" [1 F, q9 T/ H+ J+ f
·添加#include "DlgDemo.h"头文件' D% z4 Q6 r- a1 M- u0 t1 k
·添加函数DlgDemo(),具体见附件源文件代码
# u+ c$ J5 @# q- [$ n·添加initApp(),unloadApp()
$ _& S, @/ |# I1 u6 n# a注释掉DllMain中的"_hdllInstance =hInstance ;
% T( o% e& {# Z8 F" e+ g) s·在文件的末尾添加acrxEntryPoint()
) b" ? a, N7 T% m* L这里需要提醒一下的是关于AC_IMPLEMENT_EXTENSION_MODULE(DemoDLL)的使用* y7 D7 O/ y1 Y8 p
涉及到了Dll资源的使用,所以DemoDLL在这里相当于一个连接AutoCAD和MFC的纽带,6 L" a2 [ _8 ^8 ]1 C2 R
保持整个Demo.cpp中,DemoDLL的一致" T;
U$ B# c) [9 D3 p* a1 {5. 项目设置
/ s- a, h% z# u U菜单"工具"->"选项"->"项目"->"包含文件"->添加ObjectARX2004的inc目录 w: ?6 c8 r+ x3 I8 }. e! v8 b/ r
->"库文件"->添加ObjectARX2004的lib目录
* G; r3 n" b; q1 z6. 生成解决方案
; a. `5 Z: A* l ^一切pass,有2个警告rxapi.lib(libinit.obj) : warning LNK4099: 未发现 PDB“msvc.pdb0 | m3 T9 m- _" S
acedapi.lib(acedstub.obj) : warning LNK4099: 未发现 PDB“corehdr.pdb% A/ }+ e7 C! |$ @) H* G& ]9 f3 v- @7 s
不用去管它,ObjectARX开发文档已经说明了这个问题的存在,不影响使用) 4 Z- C( [: V. J8 n+ Y/ O
2 o. n1 N/ L# X- R: F2 {/ Q) j4 u
至此为止,我们已经生成了MarkDemo.arx,在Debug目录下可以找到,下面将继续介绍如何在
. A1 [# Z0 S0 o+ hAutoCAD2004菜单中自动加载Demo对话框 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|