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

我的地盘我做主
该用户从未签到
 |
< >* G6 x" a9 T+ Q) }
</P>/ B" B( C% X! |7 @" m {' G E
< > </P>5 [3 @2 T, K+ }0 M. ^! ]
< >8 ]5 H1 u* r, n, ^2 b
这是一个简要的指南,可以指导你如何在BCB中使用DirectX SDK。 </P>
/ M, T1 p; ~% ]! \- D5 q< >我在这里假定你的BCB的安装路径在:C:\Borland\CBuilder\,DirectX SDK在C:\dx5sdk\</P>
5 P% t, m5 Q4 |% k< >设置 Borland C++ Builder </P>) i* F X, S5 H/ A' B: ^
< >#include</P># t5 \; _# h+ ^3 a
< >这是许多人遇到的麻烦, Borland在BCB的\Include路径下提供了DirectX的头文件, 如果只是把c:\dx5sdk\sdk\inc\加到BCB的include路径下,它会进行如下步骤: </P>" G8 F E3 @; f1 M7 i9 j
< >查找 C:\Borland\Cbuilder\Include\路径 </P>
7 E w5 N1 T0 G5 X' ]8 u< >发现ddraw.h 头文件,使用它; </P>
9 q) U1 F1 ?% u1 }) c8 p< >除了他发现的是DirectX3的头文件之外,倒是没有什么坏处,但这毕竟不是什么好事。 </P>
2 y7 Q! ^' P% ~3 P g< >为了避免BCB这样做,我建议只是简单的把DirectX SDK的\inc路径下的文件都copy到BCB的\Include路径下, 并且覆盖掉原有的DirectX头文件,相信我,这是在所有的解决办法中最好的一种。 </P>5 H; q- I0 b) L$ b
< >库文件</P>
' ?: ]# J3 b" h( W< >可能在随DirectX发放的Borland编译器使用的库文件有一些毛病,我建议你在这里下载这个文件, 在BCB的\lib路径下解压,一切OK! </P>+ [1 M) b9 }# o: i( L0 y
< >关于工程 </P>2 ?* W* W3 f D( P4 a% v
< >千万不要错误的使用模板创建工程,来创建一个程序,你可能不久就会明白了什么叫做“悲惨世界”, 明智的解决办法是进行如下四个简单的步骤: </P>2 C- ~6 s' V3 n, s5 J) _
< >创建一个控制台程序(console application); </P>
3 w5 u3 u) ^; c% j1 o< >到Options | Project菜单选择Linker页面,然后将Console设置为Win32 GUI, </P>
& \6 h3 ]% {2 h+ |& H* {; g< >写WinMain() 函数和 WinProc() 函数: </P>
6 A, [- P0 W3 [7 D< >写其它的部分。 </P>7 }8 H; b) v: b1 ^. |7 x# |
< >这里有一个例子。 </P>; q/ J/ X2 y3 }
< >这就完了吗? </P>
0 O" b. |9 s% X! O8 }4 b6 W! s< >很不幸,没有!BCB使用一种老方式处理"define", 所以在每一个DircetX应用程序的define部分都要添加如下代码:</P>0 I s* L9 z" w2 r, t0 ]8 J6 b9 m8 M
< >#if defined( __BORLANDC__ ) && defined( __WIN32__ )
; w) \# R8 y6 m! t% d1 _. f8 V#define _WIN32
% Y4 G" W" a( I% g* u1 I5 |& h- q3 @#endif</P>5 D# m- ]. Z2 H, X" v
< >现在差不多了。 </P>$ X! N: i( p$ ~7 V. M! F) b
< >其它问题 </P>
6 O4 V; o' F9 L' M" x* ?" s1 p, Q< >如果编译时还有问题,再试一试加入如下代码:</P>
2 |4 `2 K" T/ [! a< >#define WIN32: z C; e+ N& t8 n# U
#define WIN95
' K( m1 Q. u# g4 Q; ]6 ?: B/ @: k</P> |
zan
|