请教高手:在没有代码的情况下如何知道DLL占用内存过多?
现在的情况是,我有一个 exe 需要调用有个 dll(假设A),这个 dll 又静态链接了一堆dll(因业务需要,不可精简)
但是在exe中使用 loadlibrary 加载 A 的时候,会失败,错误码是 8 ,也就是空间不足
结果可以理解,因为 A 后面的 dll 实在太多了,所有的dll文件加起来有 500多M(我也很崩溃,怎么这么多!)
经过初步定位,加载失败的原因应该是全局变量过多造成内存不足.
我现在的问题是:
1.一个exe进程所能加载的 dll 内存大小应该是有限制的,好像是256M,但是这个限制是指对什么的限制,例如是全局变量的内存,还是包括代码空间?
2.在没有dll代码的情况下,能否知道每一个dll的初始化的时候所占用的空间?如果可以,如何分析,用什么工具等等?(我简单用了一下 IDA,但是没有什么头绪)
谢谢