-
c语言入门之使用C++ Builder开发DirectX应用程序
介绍
这是一个简要的指南,可以指导你如何在BCB中使用DirectX SDK。
不过我看了之后觉得如果这么做是不是有点太高难了点吧?请有''痔''于在BCB中自己做WinMain和WinProc的观之。
--------------------------------------------------------------------------------
有关法律责任
本文和所有本文的相关部分的版权归Ralph所有,授权Pigprince中文版版权所有, 授权您可以通过电子手段(二进制形式)分发(e-mail、邮寄或存储)本文档的全部或部分, 在没有对本文做任何改变的情况下授权容许打印拷贝。建议使用最新版本。 所有的信用和版权声明被保留,如果您要在其它站点加一个指向本文的连接请通知 Ralph(E文版)或Pigprince(中文版)取得授权。
需要拥有其它发布形式权利的,如在公司、组织、商业产品如:书籍、报刊杂志、CD-ROM、 应用软件等中发布的, 请尊重作者的权利(署名权,取得报酬权等)。
本文没有任何明确的或含蓄的表达说明本文是完全正确的,对于应用本文内容所产生的任何结果,本人概不负责。 如果您在开发较高预算的工程,请您不要只依赖于本文的一家之言。
所有的名称,商标,版权等属于该名称,商标,版权等的法定所有者。
--------------------------------------------------------------------------------
这是一个简要的指南,可以指导你如何在BCB中使用DirectX SDK。
我在这里假定你的BCB的安装路径在:C:\Borland\CBuilder\,DirectX SDK在C:\dx5sdk\
设置 Borland C++ Builder
#include
这是许多人遇到的麻烦, Borland在BCB的\Include路径下提供了DirectX的头文件, 如果只是把c:\dx5sdk\sdk\inc\加到BCB的include路径下,它会进行如下步骤:
查找 C:\Borland\Cbuilder\Include\路径
发现ddraw.h 头文件,使用它;
除了他发现的是DirectX3的头文件之外,倒是没有什么坏处,但这毕竟不是什么好事。
为了避免BCB这样做,我建议只是简单的把DirectX SDK的\inc路径下的文件都copy到BCB的\Include路径下, 并且覆盖掉原有的DirectX头文件,相信我,这是在所有的解决办法中最好的一种。
库文件
可能在随DirectX发放的Borland编译器使用的库文件有一些毛病,我建议你在这里下载这个文件, 在BCB的\lib路径下解压,一切OK!
关于工程
千万不要错误的使用模板创建工程,来创建一个程序,你可能不久就会明白了什么叫做“悲惨世界”, 明智的解决办法是进行如下四个简单的步骤:
创建一个控制台程序(console application);
到Options | Project菜单选择Linker页面,然后将Console设置为Win32 GUI,
写WinMain() 函数和 WinProc() 函数:
写其它的部分。
这里有一个例子。
这就完了吗?
很不幸,没有!BCB使用一种老方式处理"define", 所以在每一个DircetX应用程序的define部分都要添加如下代码:
#if defined( __BORLANDC__ ) && defined( __WIN32__ )
#define _WIN32
#endif
现在差不多了。
其它问题
如果编译时还有问题,再试一试加入如下代码:
#define WIN32
#define WIN95
栏目列表
最新更新
C#基于接口设计三层架构Unity篇
C#线程 入门
C#读取静态类常量属性和值
C# 插件式编程
C# 委托与事件有啥区别?
C#队列学习笔记:队列(Queue)和堆栈(Stack
linq 多表分组左连接查询查询统计
C#队列学习笔记:MSMQ入门一
C# 基础知识系列- 1 数据类型
二、C#入门—基础语法
C# 在Word中添加Latex 数学公式和符号
inncheck命令 – 检查语法
基于UDP的服务器端和客户端
再谈UDP和TCP
在socket编程中使用域名
网络数据传输时的大小端问题
socket编程实现文件传输功能
如何优雅地断开TCP连接?
图解TCP四次握手断开连接
详细分析TCP数据的传输过程
SqlServer 利用游标批量更新数据
BOS只读状态修改
SQL Server等待事件—PAGEIOLATCH_EX
数据库多行转换为单一列
获取数据表最后最后访问,修改,更新,
计算经历的时间
SQL查询结果自定义排序
修改数据库默认位置
日期简单加或减
从日期获取年,月或日