DirectX Release 构建通过 VS2010 工作,但不是 exe
Posted
技术标签:
【中文标题】DirectX Release 构建通过 VS2010 工作,但不是 exe【英文标题】:DirectX Release build works through VS2010, but not exe 【发布时间】:2012-05-10 01:58:18 【问题描述】:几年来,我一直通过 Google 访问 Stack Overflow,但到目前为止还没有询问/回答任何问题,所以就这样吧。
基本上我有一个在 DirectX 11 中设置绘图模型和地形的 3D 渲染框架。一切正常,通过 Visual Studio 2010 运行调试或发布版本时没有问题。
但是,当我导航到我的文件夹并独立运行可执行文件时,只有 Debug 版本有效。发布版本显示我设置的任何清晰颜色,但没有几何图形,尽管帧速率看起来好像正在运行,并且我的鼠标被锁定在窗口的中心(可以用鼠标中键切换),好像程序运行良好.
我的第一个想法是我的内容无法加载,因为这在旧项目中产生了这种影响,但如果发生这种情况,该项目会崩溃,并且通过 PIX 运行 exe 已确认所有资产都已正确加载。
这个问题很难用谷歌搜索,所以如果有人知道是什么原因造成的,我们将不胜感激。如果有帮助,我会发布一些代码,但我看不出有什么相关的。
【问题讨论】:
会不会出现您的独立设备找不到某些 DirectX 运行时的情况?只是为了测试尝试将 .dlls 放入您的可执行文件文件夹并试一试。 【参考方案1】:最后期限迫在眉睫,更重要的事情平息了,所以我对构建配置做了一些摆弄。
原来在默认调试配置中,C/C++、代码生成、运行时库设置为“多线程调试 DLL (/MDd)”。在发行版中,它设置为“多线程 DLL (/MD)”。切换此设置以匹配发布配置会导致构建通过 Visual Studio 运行,但在其外部显示黑屏。
我仍然不知道这是什么原因,所以任何其他答案将不胜感激。
【讨论】:
以上是关于DirectX Release 构建通过 VS2010 工作,但不是 exe的主要内容,如果未能解决你的问题,请参考以下文章
WCF:在 VS2010 中自动禁用 MEX 从 DEBUG 到 RELEASE 构建?