使用第三方dll后,new出的内存被破坏了

_lee_chong 2018-12-11 10:20:42

这是我的项目结构,现在,在exe里没事new 出来的内存前后都有fd fd fd fd,一进入我的dll所有new出来的内存就没有fd fd fd fd了.
在我的dll里一旦我取消链接第三方dll的lib,就又恢复正常了。
感觉应该是第三方dll里重写了申请内存的某个标准函数,我该怎么处理?
...全文
147 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
真相重于对错 2018-12-11
  • 打赏
  • 举报
回复
这是我的项目结构,现在,在exe里没事new 出来的内存前后都有fd fd fd fd,一进入我的dll所有new出来的内存就没有fd fd fd fd了.
-=======================
为什么要有fd fd呢?
还有全局new 可以重载。
www_adintr_com 2018-12-11
  • 打赏
  • 举报
回复
不连接 lib, 直接 Loadlibary 试试呢
_lee_chong 2018-12-11
  • 打赏
  • 举报
回复
引用 1 楼 www_adintr_com 的回复:
链接静态的 CRT 库

你说的是c/c++ -> 代码生成里的 md改成mt吧,我改了后,进不去main函数了,在一开始验证堆的时候就出错了_CrtIsValidHeapPointer
www_adintr_com 2018-12-11
  • 打赏
  • 举报
回复
链接静态的 CRT 库
_lee_chong 2018-12-11
  • 打赏
  • 举报
回复
已处理,是火狐的spidermonkey引擎 内存管理部分,我稍微改动了下,去掉了对那dll的调用
赵4老师 2018-12-11
  • 打赏
  • 举报
回复
使用子进程隔离有问题的dll
_lee_chong 2018-12-11
  • 打赏
  • 举报
回复
引用 3 楼 www_adintr_com 的回复:

不连接 lib, 直接 Loadlibary 试试呢

也不行,那个dll不是我直接调用的,中间隔着另一个dll....
我现在在那开源源码里改内存申请方面的函数名字...

64,266

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧