还是CODEGUARD使用问题!!!!

yy2001 2004-07-04 10:46:16
我已经打开了CODEGUARD调试信息向选项,运行EXE文件得到CGL文件如下,可看不出错误的行和函数啊,一定要在编译环境运行才能得到吗?
Error 00001. 0x310000 (Thread 0x0634):
Bad parameter: A bad memory block (0x137A501) has been passed to the
function.
SysFreeMem(0x0045C9B8)

Call Tree:
0x004EFE0A(=Project.exe:0x01:0EEE0A)
0x0047F94F(=Project.exe:0x01:07E94F)
0x0047F68E(=Project.exe:0x01:07E68E)
0x004E11AA(=Project.exe:0x01:0E01AA)
0x77DF2CA8(=user32.dll:0x01:001CA8)
0x77DF4764(=user32.dll:0x01:003764)

------------------------------------------
Functions called:
delete (35 times)
vsnprintf (21922 times)
memset (32819 times)
SysReallocMem (77261 times)
SysFreeMem (1615289 times)
SysGetMem (1615289 times)
lstrlenA (1 times)
lstrcpyA (4 times)
realloc (1 times)
memcpy (171621 times)
delete[] (2 times)
free (26 times)
new[] (14 times)
new (40 times)
calloc (5 times)
malloc (20 times)
Resource types used:
object array (14 allocs, 13 max)
object (40 allocs, 28 max)
memory block (1615315 allocs, 1121 max)
Modules used:
...全文
136 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ahaozi 2004-07-04
  • 打赏
  • 举报
回复
对,选择Debug Full
yy2001 2004-07-04
  • 打赏
  • 举报
回复
加上调试信息?
是不是就是把compiler上的Debug Information和Line Number Information
两项选中?
jishiping 2004-07-04
  • 打赏
  • 举报
回复
EXE 没有调试信息,就是这样啊。加上调试信息,就看到出错的行了。
quickreport 2004-07-04
  • 打赏
  • 举报
回复
Bad parameter: A bad memory block (0x137A501) has been passed to the
function.
//------------------------------------------------------------------
传递给函数的参数有错误是一个bad memory
jishiping 2004-07-04
  • 打赏
  • 举报
回复
你有没有删除*.tds文件?调试信息试放在.tds文件里的。你贴出的信息,可以100%肯定的告诉你:没有调试信息才会这样。.tds文件、.Exe 文件,必须在同一个目录下。
yy2001 2004-07-04
  • 打赏
  • 举报
回复
我是选择了Debug Full,而且BUILDER了,可得到的就是上面的CGL啊CGL文件?
为什么呢?
xjp6688 2004-07-04
  • 打赏
  • 举报
回复
up
jishiping 2004-07-04
  • 打赏
  • 举报
回复
选择了Debug Full,记得重新编译啊。

13,874

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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