找不到与现有问题有关的任何合适解决方案,因此请在此处提出新问题。 我们使用具有WS2_32.LIB作为依赖项的log4cxx。 Windows SDK版本10.0.16299.0中提供了WS2_32.LIB。 在Windows7 WS2_32.dll上使用此log4cxx.dll及其所有依赖项时,将正确加载它们并正常启动应用程序。
但是在Windows 10环境中WS2_32.dll期望依赖的dll诸如API-MS-WIN-CORE-CRT-L1-1-0.DLL属于Windows10或任何可导致应用程序的Microsoft Visual C ++ Redistributable错误。
WS2_32.dll中的差异及其在Windows7和Windows10之间的依赖关系可以通过依赖关系查看器清楚地看到。 Windows 10上的如此处所示,API-MS-WIN-CORE-CRT-L1-1-0.DLL不是Windows7中的从属dll,因为Windows 10中的dll在系统中不存在,导致应用程序错误。>
那么,使应用程序成功运行的方法应该是什么?在编译log4cxx.dll以避免在Windows 10中出现此问题时,应提供哪些替代依赖关系而不是WS2_32.LIB?在哪里可以找到有关Windows OS版本之间的此类更改的文档? 请提出建议。
答案 0 :(得分:1)
旧的depends.exe不支持那些API sets,并显示错误的数据。
使用名为Dependencies的开源替换:
Dependencies是对旧版软件Dependency Walker的重写 它随Windows SDK一起提供,但其开发停止了 大约在2006年。依赖关系可以帮助Windows开发人员进行故障排除 他们的dll加载依赖性问题。