您的位置:首页 > 其它

VC2005下编译DirectX9.0的SDK问题

2007-06-29 15:21 309 查看
今天重装了OS,来整理一下VC2005下编译DirectX9.0的SDK问题

错误①:
------ 已启动全部重新生成: 项目: BaseClasses, 配置: Debug Unicode Win32 ------
正在删除项目“BaseClasses”(配置“Debug Unicode|Win32”)的中间文件和输出文件
正在编译...
dllentry.cpp
C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/include/winnt.h(222) : error C2146: 语法错误: 缺少“;”(在标识符“PVOID64”的前面)
C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/include/winnt.h(222) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/include/winnt.h(5940) : error C2146: 语法错误: 缺少“;”(在标识符“Buffer”的前面)
C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/include/winnt.h(5940) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/include/winnt.h(5940) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
c:/Program Files/DXSDK/Extras/DirectShow/Samples/C++/DirectShow/BaseClasses/ctlutil.h(278) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
c:/Program Files/DXSDK/Extras/DirectShow/include/uuids.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为Unicode 格式以防止数据丢失
生成日志保存在“file://c:/Program Files/DXSDK/Extras/DirectShow/Samples/C++/DirectShow/BaseClasses/Debug_Unicode/BuildLog.htm”
BaseClasses - 6 个错误,个警告
========== 全部重新生成: 0 已成功, 1 已失败, 0 已跳过==========

解决方案:我们在添加ddraw.h的文件时,将它的目录放到了 $(VCInstallDir)PlatformSDK/include 的前面,只要我们换一下就可以。将ddraw.h的目录放到 $(VCInstallDir)PlatformSDK/include 后面。 OK

问题②
c:/Program Files/DXSDK/Extras/DirectShow/Samples/C++/DirectShow/BaseClasses/ctlutil.h(278) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int

COARefTime(LONG);
operator=(LONG);

解决方案:改为
COARefTime(LONG);
int operator=(LONG);

在有一些错误自己都可以解决,像什么没定义等。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: