我能够通过 VS2010 环境运行我的应用程序。但不能使其作为独立的 exe 运行(只需双击 exe 即可运行)。不知道需要什么文件。
在 VS 中的附加依赖项中,我有:
d3d11.lib
d3dcompiler.lib
d3dx11d.lib
d3dx9d.lib
dxerr.lib
dxguid.lib
winmm.lib
comctl32.lib
我试图将这些文件复制到我的 exe 所在的同一目录中:
d3d11.dll
d3dcompier_43.dll
d3dx9d_43.dll
d3dx11d_43.dll
我也尝试找到一些依赖项,但是依赖项walker 崩溃并出现一些错误。所以我在 InstallShield 2010 中使用了依赖扫描器,它说:
d3dx11d_43.dll
Microsoft (R) C Runtime Library
Microsoft OLE 2.40 for Windows NT(TM) and Window 95(TM) Operating Systems
VC User gdiPlus RTL X86
最后三件事是什么?我还可以做些什么?
// 编辑
该应用程序是使用 DirectX SDK June 2010 创建的,所以我安装了 DX End User June http://www.microsoft.com/en-us/download/details.aspx?id=8109。
但是,该应用程序正在通过 VS2010 运行,但是独立的 exe(在同一台计算机上)不起作用,所以我认为如果我有 SDK(安装了 Visual C++ Redist)甚至不需要 DX 最终用户也)。
我还尝试通过 VS2010 创建一个设置,它复制了这些文件:
COMDLG32.dll
d3d11.dll
d3dx11d_43.dll
IMM32.dll
MSIMG32.dll
OLEACC.dll
oledlg.dll
但它仍然不起作用(单击 exe 时它总是显示:程序 xyz 已停止工作。Windows 可以在线找到此问题的解决方案。查找/关闭/调试按钮。)
也许它与MFC有关?