请教各位,我写了个 release 版的 dll ,想一直用,不再编译它。可是连上我的 debug 版的 exe 就出错。网上有的库就只有 release 版的 dll ,连接什么版本的 exe 都能用,这是怎么做的?
![]() | 1 xdeng 2016-03-21 09:14:25 +08:00 因为 debug 版加入了 调试信息 debug 版的 new malloc free delete 不一样 |
![]() | 2 pagict 2016-03-21 10:06:31 +08:00 为什么不先贴一下是什么错 |
![]() | 3 3dwelcome 2016-03-21 10:10:38 +08:00 debug 有一个叫 Side by Side 的依赖东西,有可能调用不同版本的 msvcrt.dll 之类的,尽可能的多用 release 发布吧,省去很多麻烦。 |
![]() | 4 stupidcat 2016-03-21 10:23:12 +08:00 楼主问的是,为什么网上的 dll 就是只有 release 版的,但是 debug 也能用,但是自己编译的 release 版的 dll ,在 debug 却不能用? |
![]() | 5 jptanggordon OP |
![]() | 6 xujif 2016-03-21 12:50:07 +08:00 一般来说不会有问题的,可以先贴下错误 |
![]() | 7 jptanggordon OP @xujif 报错是: 0x77511037 (ntdll.dll) (Marching.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0x00000044 时发生访问冲突。 |
![]() | 8 xujif 2016-03-21 23:30:49 +08:00 via iPhone @jptanggordon 看着像野指针 debug 模式下面 |
![]() | 9 xujif 2016-03-21 23:44:51 +08:00 via iPhone debug 模式会初始化 cc 不一定出错。但是 release 会乱来。每次都是 0000044 ? |