- 积分
- 15860
- 明经币
- 个
- 注册时间
- 2007-3-27
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
本帖最后由 xinxirong 于 2016-4-25 10:32 编辑
- BOOL chgEntDxf1(ads_name ent, wchar_t * str)
- {
- struct resbuf *rbTargEnt; // resbuf to hold ent data
- struct resbuf *rbTrav; // resbuf to traverse linked list
- struct resbuf *tmp;
- int rc; // Return code
- wchar_t *sp2;
-
- rbTargEnt = acdbEntGet(ent);
- if(!rbTargEnt)
- {
- acutPrintf(_T("\nacdbEntGet失败. "));
- return FALSE;
- }
- rbTrav = rbTargEnt;
- while(rbTrav)
- {
- switch(rbTrav->restype)
- {
- case 1 : // 更改文字内容
- //_tcscpy( rbTrav->resval.rstring,str);
- tmp = acutBuildList(RTSTR, str, 0);
- sp2 = rbTrav->resval.rstring;
- rbTrav->resval.rstring = tmp->resval.rstring;
- tmp->resval.rstring = sp2;
- acutRelRb(tmp);
- break;
- }
- rbTrav = rbTrav->rbnext;
- }//while
- rc = acdbEntMod(rbTargEnt);
- if(rc != RTNORM)
- {
- acutPrintf(_T("\n更改dxf组码1失败,可能是对象图层锁定"));
- }
- //清理resbuf
- if(rbTargEnt)
- {
- acutRelRb(rbTargEnt);
- }
- return TRUE;
- }
复制代码 先是直接_tcscpy( rbTrav->resval.rstring,str); 改lisp值,errno系统变量为2 Invalid entity or selection set name
有人说直接改dxf1组码的值会很危险,必须新建resbuf*,但errno系统变量为101,也不知道是什么错误号。
|
|