我试图在我的应用程序中延迟加载 wintrust.dll 和 crypt32.dll(这些用于在 DLL 中执行数字签名/发布者检查)。我正在使用VS2008。在我的项目属性的链接器部分的延迟加载属性中添加这两个 DLL 作为条目后,我仍然收到 LNK4199 警告,即没有从 DLL 加载任何内容,并且 LNK2019 错误无法解析 WinVerifyTrust 等符号。
将以下内容作为条目添加到 Additional Dependencies 可缓解此问题:crypt32.lib 和 wintrust.lib。我现在对链接没有任何问题。但是,我想知道的是如何确保它没有链接到静态库?由于潜在的许可问题,我不想链接到静态库。我想动态加载安装在 Windows 中的 DLL,并希望 DelayLoad 可以帮助我做到这一点,而不必求助于 LoadLibrary 和 GetProcAddress 函数调用。
非常感谢有关所有不同库使用/链接选项的任何信息!
谢谢。