(Access Violation Reading 0xcccccccc)在线等呢
<p>(Access Violation Reading 0xcccccccc)</p><p>Acad::ErrorStatus CModifyEnt::ChangeColor(AcDbObjectId entId, Adesk::UInt16 colorIndex)<br/>{</p><p> AcDbEntity *pEntity;<br/> // 打开图形数据库中的对象<br/> acdbOpenObject(pEntity, entId, AcDb::kForWrite);<br/> // 修改实体的颜色<br/> pEntity->setColorIndex(colorIndex);<br/> pEntity->close();<br/> return Acad::eOk;<br/>}这个是在CModifyEnt定义的类,然后我在另一个类调用的时候出现这样的问题(在vc中编译是没有问题)</p><p>但是在cad里调用的时候就出现问题了,这个是调用函数</p><p>CModifyEnt::ChangeColor(lineId, 1);</p><p> ---------------------------<br/>G:\zuoye\createent\Debug\createent.arx ARX 命令中发生异常<br/> ---------------------------<br/> 未处理的异常 C0000005 (Access Violation Reading 0xcccccccc),地址: 3264E28h<br/> ---------------------------<br/> 确定 <br/> ---------------------------</p> <p>Acad::ErrorStatus CModifyEnt::ChangeColor(AcDbObjectId entId, Adesk::UInt16 colorIndex)<br/>{</p> AcDbEntity *pEntity=NULL; // 指针对象需要初始化<br/> // 打开图形数据库中的对象<br/> Acad::ErrorStatus es=acdbOpenObject(pEntity, entId, AcDb::kForWrite);<br/> // 修改实体的颜色<br/> if(es==Acad::eOk && pEntity!=NULL) // 确认entId有效且可以写方式打开<br/> {<br/> pEntity->setColorIndex(colorIndex);<br/> pEntity->close();<br/> }<br/> return es;<br/>}
页:
[1]