gpt4 book ai didi

c++17 - 升级到 Visual Studio 2019 和 v142 工具集后,为什么我的程序不再在 Windows 7 上运行?

转载 作者:行者123 更新时间:2023-12-04 10:54:53 30 4
gpt4 key购买 nike

我正在通过 Visual Studio 2019 提供的 v142 工具集将我们的代码库升级到 C++17。运行使用此工具集编译的程序时,操作系统报告:

(program name).exe - System Error

The program can't start because api-ms-win-core-processenvironment-l1-2-0.dll is missing from your computer. Try reinstalling the program to fix this problem.

OK



这是出乎意料的。之前的版本使用 v140。两个版本都使用 10.0.15063.0 SDK。 WINVER 在命令行上设置为 0x0601,_WIN32_WINNT 也是如此,所以我预计不会发生任何不愉快的事情。运行depends.exe 来调查依赖关系会产生以下结果:

Dependency Walker output

右侧 Pane 显示使用 v140 构建的结果,左侧 Pane 显示使用 v142 构建的结果。如您所见,它们都绑定(bind)到同一个运行时,并且缺少的 DLL 绑定(bind)到任何奇异的东西:第一项正在寻找 GetCommandLineWGetCurrentDirectoryW .

最佳答案

您似乎在链接 mincore.lib .此库旨在减少 Windows 8 及更高版本上加载的 DLL,并且在 Windows 7 上不受支持:

Compatibility with Windows 7, Windows Server 2008 R2 and older operating systems: Binaries that link to MinCore.lib or MinCore_Downlevel.lib are not designed to work on Windows 7, Windows Server 2008 R2 or earlier. Binaries that need to run on earlier versions of Windows or Windows Server must not use either MinCore.lib or MinCore_Downlevel.lib.

关于c++17 - 升级到 Visual Studio 2019 和 v142 工具集后,为什么我的程序不再在 Windows 7 上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59268906/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com