我已经下载了infinityHook开源项目,在Windows8.1上的VS2017社区中成功地编译了它(包括发行版和调试编译)。现在,我正尝试使用我的项目中的# libinfinityhook.lib注释指令链接文件,如下所示:
#pragma comment (lib, "libinfinityhook")
我手动将libinfinityhook.lib的调试构建复制到一个自定义目录中,并将整个路径添加到配置属性->VC++目录->库目录中。有趣的是,这个库的调试版本可以工作,但是发布版本不能工作。我的项目的版本构建给出了一个未解决的错误(参见下面)。如果有人能建议我在这个配置中做错了什么,我会很感激。
Error LNK2019 unresolved external symbol IfhInitialize referenced in function DriverEntry
如果我通过解决方案资源管理器将完全相同的库(版本)作为源文件添加到我的项目中,如下面的屏幕截图所示,项目将成功编译和构建。
发布于 2022-01-28 01:38:10
好的,我发现了我所犯的错误。根据Microsoft文章这里,链接器首先在当前工作目录中搜索,然后在LIB环境变量中指定的路径中进行搜索。但是,我没有像lib环境变量那样将lib文件放置在任何目录中,也没有放在当前工作目录中。
https://stackoverflow.com/questions/70806553
复制相似问题