这是一个非常具体的问题, - 我为此道歉。
我使用Direct3D 11构建了一个图形化的实时应用程序。我在Win7操作系统上启动了它。然后我升级到Win10,当我再次尝试编译解决方案时,链接器就像它已经捕获了硅微芯片的瘟疫一样。
它会在甚至不使用给定函数的对象中喷出未解析的符号。
我得出的结论是,大多数问题都是C函数。我知道c函数不再包含在C ++头文件和库中,所以我确保明确地包含所有相关的C库。
我已经阅读并遵循了大多数其他人的解决方案,他们遇到了Windows 10拧错代码的问题。其中之一是:Upgraded to Windows 10 and now WAMP won't work
我还尝试告诉链接器在哪里查找-lib文件,以防编译器或项目错过备忘录。
在我的电脑上,Direct3D库的位置在这里:C:\ Program Files(x86)\ Windows Kits \ 10 \ Lib \ 10.0.10586.0 \ um \ arm64
正如您所看到的,我试图强制它使用Win10 lib版本,以防这是一个要求。
我从一端开始试图让自己做一些愚蠢的事情:
我已经在互联网上漫游了十年(仅一个月),找到了一些解决方案,但没有。
我希望你们中的一些人知道我可能会犯下什么样的愚蠢行为。
所有建议都会有所帮助。
答案 0 :(得分:1)
您很可能正在使用与VS 2015不兼容的静态库进行链接,因为它使用Universal CRT。例如,使用VS 2015时,旧版DirectX SDK库DXERR.LIB
无法链接。请确保使用VS 2015重建所有代码,并避免使用为其他版本的Visual C ++构建静态库。
您也无法在与64位ARM库链接的x86或x64 PC上链接和运行项目。
您不需要使用Windows 10 SDK for Win32桌面应用程序,但您当然可以。