cs0*_*815 1 c++ assemblies visual-studio-2010 .net-assembly
我把MSVCR100D.DLL放到c:\ windows\system32文件夹中,但依赖者walker仍在抱怨它丢失了.有任何想法吗?
Dependency walker在很长一段时间内没有更新.我认为作者只是放弃了试图跟上Windows开发的步伐.特别是解决并排清单查找规则是一个非常难以解决的问题.SetDllDirectory()无法静态解析.关于延迟加载的DLL并不是很聪明,它对转发器的DLL导出一无所知.你几乎总是得到一个实际上没有丢失的丢失的DLL的大清单.
在64位操作系统上使用32位版本也无法正常工作,在msvcr100d.dll的情况下可能出现错误.哪个必须复制到c:\ windows\syswow64,而不是system32用于32位可执行文件.您真的希望支持msvcrt版本10及更高版本的本地部署.换句话说,只需将DLL复制到与EXE相同的目录中即可.将它放在Windows系统目录中会让你暴露出太多的DLL Hell,远远超出选择错误的系统目录.
如果你还有问题,那么SysInternals的ProcMon是更好的工具.它生成的跟踪显示了它查找DLL的确切位置.
| 归档时间: |
|
| 查看次数: |
1311 次 |
| 最近记录: |