我想把xdata附加到圆上,如下:
//---------------
acdbRegApp(str); resbuf *pRb = acutNewRb(AcDb::kDxfRegAppName); pRb->resval.rstring=new char[(strlen(str) + 1)]; strcpy(pRb->resval.rstring, str); pRb->rbnext=dat.asRes(); if(pCircle->setXData(pRb)!=Acad::eOk) acutPrintf("oops!Faile to append the xdata."); acutRelRb(pRb); pCircle->close(); //-----------------------------------------------------------
都能执行(能生成圆,能注册appname),除了setXData一句外。为什么呢? |