作者downstairs (楼下)
看板C_and_CPP
标题Fw: [问题] dependency walker找缺失的dll 要怎麽用?
时间Sun Nov 5 17:07:24 2017
※ [本文转录自 C_Sharp 看板 #1P_iuQCx ]
作者: downstairs (楼下) 看板: C_Sharp
标题: [问题] dependency walker找缺失的dll 要怎麽用?
时间: Sun Nov 5 16:38:47 2017
大家好
小弟正在学怎麽用dependency walker找缺失的dll
很简单
我用C++建置了一个 ForCSharpCall.dll 给C#用
该dll只负责做加减乘除 教学网站 :
https://goo.gl/hVL1JB (应该可以不用看)
写好的专案:
https://goo.gl/Y4vZc3
然後C#建置完会有执行档exe 可以正常运作
然後我把 ForCSharpCall.dll 删除 想当然尔点执行档会失败 因为需要dll
此时我把exe丢进 dependency walker
期待可以看到 找不到ForCSharpCall.dll 之类的蛛丝马迹提示
结果出现这个:
https://imgur.com/a/rHYnK
分成三个部分: 黄色问号 白色视窗 红色视窗
可是就是都没有 ForCSharpCall.dll 的字眼
所以想请问说 实际上到底要怎麽样才能找到缺失的dll呢?
感谢!!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.134.146.2
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1509871130.A.33B.html
※ 发信站: 批踢踢实业坊(ptt.cc)
※ 转录者: downstairs (220.134.146.2), 11/05/2017 17:07:24
1F:推 stupid0319: 少DLL,WINDOWS不是都会提示吗!? 11/05 18:09
会 但是如果我少100个dll
WINDOWS不会一次列出来 而是程式crash才列出少的那一个
只能用错误尝试法慢慢找 效率很差
我想这就是大家会用dependency walker的其中一个原因
2F:推 stupid0319: PE有DLL输入表可以看呀,而且怎麽可能用到100个DLL 11/05 18:38
3F:→ stupid0319: 只要少一个DLL,WIN载入器就会中断,不太能同时显示也 11/05 18:39
4F:→ stupid0319: 而且DLL载入还有动态载入的方法 11/05 18:42
请问PE是什麽?谢谢
如果PE是编译器里面的东西 那无法解决我的问题
这是一个人用 dependency walker 找出要玩 刺客教条 所缺少的dll
https://www.youtube.com/watch?v=amvh8NFK-50
可是玩家是不可能跟刺客教条游戏公司要到可以用编译器打开的souce code来找缺乏的dll
我的角色比较类似玩家的部分 而非范例中我是撰写程式的人
※ 编辑: downstairs (220.134.146.2), 11/05/2017 19:01:37
5F:推 loveflames: PE是windows执行档格式 11/05 19:57
6F:→ stupid0319: 很好奇是什麽情况可以缺DLL缺到100多个,太可怕了 11/05 20:24
7F:推 FrozenMoment: Dependency Walker没记错的话应该不能抓clr的部分吧 11/06 08:20
8F:推 dces4212: 楼楼上 distributable package没装就有一百初了 11/16 11:44