精易论坛

标题: 下标越界 运行的时候提示找不到 [打印本页]

作者: 口算MD5    时间: 2022-12-8 13:31
标题: 下标越界 运行的时候提示找不到
这种问题一般去哪找 会不会是模块的问题  主要是不定时的出现这种问题 没办法定位是那个dll的问题

0ed43191ffb97483ea8730e9e54e83b.png (21.58 KB, 下载次数: 1)

0ed43191ffb97483ea8730e9e54e83b.png

e2f8ce33e13e41bea52d9a5940aef6f.png (64.26 KB, 下载次数: 0)

e2f8ce33e13e41bea52d9a5940aef6f.png

作者: 判断    时间: 2022-12-8 13:31
主程序源码里能使用运行到错误位置来定位
模块里定位不了,DLL也定位不了,把模块和DLL的源码复制过来,然后报错后再定位
作者: 鹏书    时间: 2022-12-8 13:32
编译后 有啥办法知道是哪个 数组成员数引用下标超出...
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14755977
(出处: 精易论坛)
看我的答案

作者: Siempre    时间: 2022-12-8 13:34


作者: 口算MD5    时间: 2022-12-8 13:36
nikezhi 发表于 2022-12-8 13:32
编译后 有啥办法知道是哪个 数组成员数引用下标超出...
https://125.confly.eu.org/forum.php?mod=viewthread&tid= ...

我点了  你看第二张图  提示未找到
作者: 口算MD5    时间: 2022-12-8 13:36
Siempre 发表于 2022-12-8 13:34

我点了  你看第二张图  提示未找到
作者: 口算MD5    时间: 2022-12-8 13:40
判断 发表于 2022-12-8 13:38
主程序源码里能使用运行到错误位置来定位
模块里定位不了,DLL也定位不了,把模块和DLL的源码复制过来,然 ...

我复制过来了   dll找了 源码里也找了 就是提示找不到
作者: 判断    时间: 2022-12-8 13:42
口算MD5 发表于 2022-12-8 13:40
我复制过来了   dll找了 源码里也找了 就是提示找不到

肯定找不到啊,要复制后编译或者运行后出现的地址才能定位
之前的地址是找不到的
作者: Siempre    时间: 2022-12-8 13:42
口算MD5 发表于 2022-12-8 13:36
我点了  你看第二张图  提示未找到

引用多就这点不好 埋码做日志定位大致区域 慢慢找 没啥巧
作者: 判断    时间: 2022-12-8 13:51
判断 发表于 2022-12-8 13:42
肯定找不到啊,要复制后编译或者运行后出现的地址才能定位
之前的地址是找不到的 ...

就是说 你如果不是主程序里面的源码出错的 ,是定位不了的
少用模块  以后方便定位
作者: wtflxk    时间: 2022-12-8 14:23
我在支个招给你 像这种数组报错的 还好定位 把所有引用的模块反成源码 通过全局搜索 [ 找到所有的数组地方 然后看下你写的代码 引用了那些模块中的调用了这些数组 就能快速定位了。
作者: afu45    时间: 2022-12-8 16:15
如果错误很容易复现
那就一点一点注释掉 去排查
排查前先备份
作者: 菜鸟路过    时间: 2022-12-28 19:44
检查报错是否是你引用的模块或者dll内部的报错问题
作者: wtflxk    时间: 2023-5-26 08:25
通过楼上各位大佬提供的找不到的 就是在模块中 或其他DLL中了 这类的 没太好的办法 如果是模块 你可以把你现在的程序也变成模块 然后反译成源码 在运行定位就能通过楼上的方法定位了 不过坏处就是代码除了公开的能正常的显示  其他的全都被混淆了




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4