我有一个简单的3D应用程序,使用MSVC++ 2008 Express在C++和D3D9中编程。几个星期前,我不得不格式化我的硬盘,所以目前没有安装DirectX SDK。如何在没有SDK的机器上运行D3D9程序(已经编译过)?
但是,我发现我在我的项目“调试”文件夹中找到的exe文件没有运行。它给出的错误是:
“此应用程序未能启动,因为找不到d3dx9d_38.dll。重新安装该应用程序可能会解决此问题。”
当然,它在我安装了SDK之后起作用。然后我编译了一个“发布版本”,认为这是解决方案。然后我卸载SDK并尝试运行.exe文件。 仍然给了我错误。
那么如何让这样的.exe文件在没有SDK的机器上运行?
呵呵?你说在你的问题,这是一个exe文件来自调试目录... d3dx9d_38.dll肯定是一个调试dll,你不允许分发。针对发布d3d构建。 – Bahbar 2010-06-03 16:13:46
你已经链接到调试D3DX因此你已经将发布DLL重命名为类似于调试DLL的DLL,并且它可以工作(谢天谢地,在那里没有只需要调试的钩子) – Goz 2010-06-03 16:43:12
更改发布版本的链接器设置以链接发布模式DirectX库,而不是调试版 – Alan 2010-06-04 18:12:50