windows Dependency Walker:缺少 dll
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/36240215/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Dependency Walker: missing dlls
提问by Ben N.
I have been trying to resolve .dll dependencies for the executable file with Dependency Walker. Currently, I am getting missing .dlls in the following form:
我一直在尝试使用Dependency Walker解决可执行文件的 .dll 依赖项。目前,我丢失了以下形式的 .dll:
API-MS-WIN-XXX
API-MS-WIN-XXX
EXT-MS-WIN-XXX
EXT-MS-WIN-XXX
For example:
例如:
API-MS-WIN-APPMODEL-IDENTITY-L1-2-0.DLL
API-MS-WIN-APPMODEL-RUNTIME-INTERNAL-L1-1-0.DLL
API-MS-WIN-BASE-UTIL-L1-1-0.DLL
API-MS-WIN-CORE-APIQUERY-L1-1-0.DLL
EXT-MS-WIN-RTCORE-NTUSER-SYSCOLORS-L1-1-0.DLL
Does anybody have any ideas on how to resolve these? Any help will be greatly appreciated!
有没有人对如何解决这些问题有任何想法?任何帮助将不胜感激!
Additional info:I compiled the executable using Visual Studio 2013. The most interesting thing is that I did not receive any errors during compilation. However, I cannot run it due to missing dependencies. I also attached a screenshot of dependency walker:
附加信息:我使用Visual Studio 2013编译了可执行文件。最有趣的是,我在编译过程中没有收到任何错误。但是,由于缺少依赖项,我无法运行它。我还附上了依赖步行者的截图:
Update 1:As an attempt to solve the problem I tried to add the path for the libraries that VS used during compilation to the $PATHenvironment variable without any luck (Dependency Walkerstill shows unresolved dependencies).
更新 1:为了解决这个问题,我尝试将 VS 在编译期间使用的库的路径添加到$PATH环境变量中,但没有任何运气(Dependency Walker仍然显示未解析的依赖项)。
回答by Ofek Shilon
These are API-sets - essentially, an extra level of call indirectionintroduced gradually since windows 7. Dependency walker development seemingly halted long before that, and it can't handle API sets properly.
这些是 API 集 -本质上,自 Windows 7 以来逐渐引入了一个额外的调用间接级别。依赖walker 开发似乎在此之前很久就停止了,并且它无法正确处理 API 集。
So these are all false alarms and nothing to worry about. You're not missing anything.
所以这些都是误报,没什么好担心的。你没有错过任何东西。
Also see On API-MS-WIN-XXXXX.DLL, and Other Dependency Walker Glitches.
另请参阅API-MS-WIN-XXXXX.DLL 和其他依赖项 Walker 故障。
Edit: Only in Oct 2017 did someone finally try to fill this gap. Meet Dependencies by lucasg. I've only briefly fiddled with it until now, but it handles API sets well and is at least very worthy of attention.
编辑:直到 2017 年 10 月,才终于有人试图填补这一空白。通过 lucasg满足依赖关系。到目前为止,我只是简单地摆弄过它,但它可以很好地处理 API 集,至少非常值得关注。
回答by Tae-Sung Shin
In addition to what @Ofek Shilon said, I usually ignore following dlls that dependency_walker identified as missing when I try to find missing dlls for my program. You will see that your program runs fine when dependency_walker says these dlls are missing.
除了@Ofek Shilon 所说的之外,当我尝试为我的程序查找丢失的 dll 时,我通常会忽略以下被dependency_walker 识别为丢失的 dll。当dependency_walker 说这些dll 丢失时,您将看到您的程序运行良好。
- API-MS-WIN-*.dll
- EXT-MS-WIN-*.dll
- IESHIMS.dll
- EMCLIENT.dll
- DEVICELOCKHELPERS.dll
- API-MS-WIN-*.dll
- EXT-MS-WIN-*.dll
- IESHIMS.dll
- EMCLIENT.dll
- 设备锁助手.dll
You can search for dlls other than the ones above to resolve your problem.
您可以搜索上述 dll 以外的 dll 来解决您的问题。
回答by botheredbybees
I also ignore:
我也无视:
- EFSCORE.DLL
- WPAXHOLDER.DLL
- EFSCORE.DLL
- WPAXHOLDER.DLL