本帖最后由 epwt 于 2011-5-19 14:13 编辑
- resbuf *filter;
- filter = acutBuildList(8, "WALL", 0);
- if(acedSSGet(NULL, NULL, NULL, filter, ss) != RTNORM)
- {
- acutRelRb(filter);
- return;
- }
- acutRelRb(filter);
- acedSSLength(ss, &len);
- acedSSName(ss, 0, ent);
- acdbGetObjectId(objId, ent);
- acedSSFree(ent);
正常情况下,如果我选中的不是WALL图层的实体,
直接按回车,应该就走到if里直接return的,
我debug进去,的确是这样。
但是我直接打开cad,加载arx程序,
执行同样的操作,程序却报错了。
我严格检查了在执行这个操作之前的操作,
看是否前面的操作导致这个操作失灵。
于是我怀疑,是不是debug进去,加载的顺序和
直接打开cad加载的顺序有些不一样,导致这个问题的出现。
当然,更可能的是某些内存没回收,但是这个还真的很难找啊。
还望多指教。
|