- 在线时间
- 0 小时
- 最后登录
- 2007-9-23
- 注册时间
- 2004-9-10
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 9975 点
- 威望
- 7 点
- 阅读权限
- 150
- 积分
- 4048
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1893
- 主题
- 823
- 精华
- 2
- 分享
- 0
- 好友
- 0

我的地盘我做主
该用户从未签到
 |
< >2 u' f' \' `4 ^# r6 Y+ d! E* N
</P>
G+ h, U l& x. O6 ~8 A( f. k< > </P>
2 b2 t3 E/ w8 n. C' s, t< >/ M: Q5 A, L' b2 l) b3 p" s
这是一个简要的指南,可以指导你如何在BCB中使用DirectX SDK。 </P>
" B4 j# p6 V2 h4 s' `& S) Y3 B< >我在这里假定你的BCB的安装路径在:C:\Borland\CBuilder\,DirectX SDK在C:\dx5sdk\</P>
( J5 W" o6 j8 T) _* J1 [0 n6 \! _< >设置 Borland C++ Builder </P>1 Q/ B0 z& _( ]+ ^
< >#include</P>* v8 `6 A# r; Q" Y7 r" {
< >这是许多人遇到的麻烦, Borland在BCB的\Include路径下提供了DirectX的头文件, 如果只是把c:\dx5sdk\sdk\inc\加到BCB的include路径下,它会进行如下步骤: </P>; z% o2 f) q2 ~; g0 Y3 L q
< >查找 C:\Borland\Cbuilder\Include\路径 </P>
, s }6 k4 i6 ^% W; E% p. ?/ z< >发现ddraw.h 头文件,使用它; </P>, G) u3 I) m: Z, Q
< >除了他发现的是DirectX3的头文件之外,倒是没有什么坏处,但这毕竟不是什么好事。 </P>: g2 F/ y$ P, Z m, _) m3 [7 o9 d4 q
< >为了避免BCB这样做,我建议只是简单的把DirectX SDK的\inc路径下的文件都copy到BCB的\Include路径下, 并且覆盖掉原有的DirectX头文件,相信我,这是在所有的解决办法中最好的一种。 </P>
! Y7 C$ O, P5 A8 w L< >库文件</P>* T1 |% A0 Y6 M& F( P$ ]$ H
< >可能在随DirectX发放的Borland编译器使用的库文件有一些毛病,我建议你在这里下载这个文件, 在BCB的\lib路径下解压,一切OK! </P>2 V) a% o# G `+ M9 W; m2 w# a
< >关于工程 </P>
# T& `4 e" z3 n' m3 L5 H. M< >千万不要错误的使用模板创建工程,来创建一个程序,你可能不久就会明白了什么叫做“悲惨世界”, 明智的解决办法是进行如下四个简单的步骤: </P>
7 d- d9 _) b" O: V: L< >创建一个控制台程序(console application); </P>
0 [/ G. Z/ h% q5 t8 [< >到Options | Project菜单选择Linker页面,然后将Console设置为Win32 GUI, </P>
' x8 \$ V$ F( J: t; A. y< >写WinMain() 函数和 WinProc() 函数: </P>
1 k3 O O* C E/ Y9 V< >写其它的部分。 </P>& P7 z) u: }+ N" [
< >这里有一个例子。 </P>2 Z/ Z: V7 ^. i8 K4 o
< >这就完了吗? </P>
7 y) \ s, b, M- J5 g5 l< >很不幸,没有!BCB使用一种老方式处理"define", 所以在每一个DircetX应用程序的define部分都要添加如下代码:</P>6 N0 I' h6 l; k8 {6 y8 n
< >#if defined( __BORLANDC__ ) && defined( __WIN32__ )
: w, j1 Z: R) h. c#define _WIN32 @ p1 Q& Z4 z$ h) ]) B8 d
#endif</P>4 Y1 F; E. ^+ {& ?( N. d
< >现在差不多了。 </P>
6 ~& W0 Z `7 w9 F% P< >其它问题 </P>
6 k9 _# B7 L; W( L# k2 ^< >如果编译时还有问题,再试一试加入如下代码:</P>
1 V/ W1 \/ n: a< >#define WIN32
7 n- R5 U( Z8 r# N#define WIN95 $ E4 d" U0 S% L& _
</P> |
zan
|