需要在Visual Studio中编译缺少的`detour 3.0`库

问题描述

我将在Visual Studio 2013或Visual Studio 2019中编译旧项目(Visual Studio 2012平台-v110xp)。

它正在使用boost和Microsoft detour 3.0库。 但是detour 3.0已被意外删除。 现在我只能找到detour4.0

但是我收到这样的错误

detour4.0 error

如何获取detour 3.0库?

解决方法

使用VS 2015,VS 2017或VS 2019构建的C ++静态库是“二进制兼容的”,但是Visual C ++的任何其他版本都不是。例如,当与VS 2013代码链接时,与VS 2012链接的静态库不一定有效。参见WithUserAssignedManagedServiceIdentity

我不知道确切涉及哪些工具集,但这可能是链接问题的原因。最主要的是确保所有静态库和主要可执行文件均由同一编译器版本构建。

请注意,DLL及其导出库通常仅使用“ C样式”绑定,因此它们可以与多代编译器二进制兼容。

VS 2019包含v141_xp平台工具集(即,使用与Windows XP / Windows Server 2003兼容的Windows 7.1A SDK的VS 2017编译器)。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...