lzgvcd 发表于 2007-9-15 21:14:00

(Access Violation Reading 0xcccccccc)在线等呢

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

fpiw 发表于 2007-9-16 13:25:00

<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 &amp;&amp; pEntity!=NULL)  // 确认entId有效且可以写方式打开<br/> {<br/>    pEntity-&gt;setColorIndex(colorIndex);<br/>    pEntity-&gt;close();<br/> }<br/> return es;<br/>}
页: [1]
查看完整版本: (Access Violation Reading 0xcccccccc)在线等呢