如果我应该使用Windows kit 10中的某些类型,请使用d3d11.h,d3d11.lib(静态库)并在Toolset v90(Visual Studio 2008)下进行编译。如果在没有d3d11.h迹象的Windows Vista下启动.exe文件,将会发生什么情况?会抛出未解决的外部异常吗?
答案 0 :(得分:0)
如果您使用预期与操作系统一起分发的共享/动态库来编译项目,然后尝试在其他操作系统上运行该项目,则它很可能崩溃或根本无法启动,因为缺少/不匹配的共享库/ dll。
还请注意,未解决的外部错误是链接时间错误,不是异常。
答案 1 :(得分:0)
d3d11.lib
是一个导入库。 d3d11.h
与运行时无关(标头仅由编译器使用)以及“未解决的外部条件”(链接器错误)无关。如果未安装DirectX 11,则应用程序将无法启动,导致缺少dll依赖项。 DirectX11可作为Windows Vista的平台更新的一部分,请参阅
How to install DirectX 11 on Windows Vista ,因此可执行文件应该能够正常运行。