-
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
这是一个简要的指南,可以指导你如何在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
最新更新
Objective-C语法之代码块(block)的使用
VB.NET eBook
Add-in and Automation Development In VB.NET 2003 (F
Add-in and Automation Development In VB.NET 2003 (8
Add-in and Automation Development in VB.NET 2003 (6
Add-in and Automation Development In VB.NET 2003 (5
AddIn Automation Development In VB.NET 2003 (4)
AddIn And Automation Development In VB.NET 2003 (2)
Addin and Automation Development In VB.NET 2003 (3)
AddIn And Automation Development In VB.NET 2003 (1)
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
武装你的WEBAPI-OData入门
武装你的WEBAPI-OData便捷查询
武装你的WEBAPI-OData分页查询
武装你的WEBAPI-OData资源更新Delta
5. 武装你的WEBAPI-OData使用Endpoint 05-09
武装你的WEBAPI-OData之API版本管理
武装你的WEBAPI-OData常见问题
武装你的WEBAPI-OData聚合查询
OData WebAPI实践-OData与EDM
OData WebAPI实践-Non-EDM模式