如何使用 Direct8 dll 编译/调试 Visual Studio 2012 Win32 项目
Posted
技术标签:
【中文标题】如何使用 Direct8 dll 编译/调试 Visual Studio 2012 Win32 项目【英文标题】:How can I compile/debug Visual Studio 2012 Win32 project with Direct8 dlls 【发布时间】:2013-01-28 10:47:28 【问题描述】:我是 Win32 的新手。
错误 LNK2019:无法解析的外部符号 _DirectDrawCreateEx@16 在函数“int __cdecl DD_Init(int,int,int)”中引用 (?DD_Init@@YAHHHH@Z)
显示当我尝试在 Win7 VS2012(安装了 directx 11)上运行 direct8 Win32 项目时,我可以在 vs2012 中使用 direct8 dll 编译 win32 项目吗?
【问题讨论】:
【参考方案1】:您尝试使用的 DirectX 版本非常旧。但我相当确定它仍然受支持,我看到 DirectDrawCreateEx() 仍然存在于最新的 Windows SDK 版本 8 中,它包含在 VS2012 中。请避免按照其他答案中的建议安装旧 SDK,它不会对 VS2012 有任何了解,并且可能会部署严重过时的组件,这些组件可能会影响您的机器。 DirectX 不久前集成在 Windows SDK 中。
Project > Properties > Linker > Input > Additional Dependencies 设置。添加ddraw.lib
【讨论】:
Thx,在 VS2012 中使用 dx9 编译的 Win7 上运行良好,但除了在 Additional Dependencies 设置中添加 ddraw.lib 外,如果引用 dx 版本,还需要在 Linker 的 General 选项中指定 Additional Librart 目录因系统而异。【参考方案2】:确保您已安装 DirectX 8 SDK 并设置正确的项目路径: http://msdn.microsoft.com/en-us/library/73f9s62w(v=vs.71).aspx 您必须为 win32 项目设置 x86 lib 目录。 祝你好运
【讨论】:
以上是关于如何使用 Direct8 dll 编译/调试 Visual Studio 2012 Win32 项目的主要内容,如果未能解决你的问题,请参考以下文章