![]() |
【转帖】acdbobject::upgradeopen()出现的问题!
acdbobject::upgradeopen()出现的问题!
acdbobject::upgradeopen()出现的问题! 当用acdbobject::upgradeopen()将一个层表记录改为 kforwrite时,提示acad::ehadmultiplereaders,无法改变其读写的状态 只有用->close()函数关闭层表记录,再执行upgradeopen() ,操作成功。 是不是运用upgradeopen() 前必须关闭对象呢? 但是我在另外一个工程中却没有这样的问题,不解!请高手指教,呵呵。。。 silence of happiness.... acad::errorstatus upgradeopen(); if the object is currently open acdb::kforread with only one reader, then this function upgrades the object to open acdb::kforwrite. in the process of changing to open for write, the object is closed, thus triggering any pertinent notification. returns acad::eok if successful. if the object has more than one reader, then the open status is not changed and adesk::ehadmultiplereaders is returned. if the object is already open acdb::kforwrite, then acad::ewasopenforwrite is returned. if the object is currently sending notification, then the open status is not changed and acad::ewasnotifying is returned. note a call of this function does not need to be matched with a call to downgradeopen(), since a call to close() or cancel() will sufficiently cleanup the entity抯 open state. 注意这个函数中的说明 if the object has more than one reader, then the open status is not changed and adesk::ehadmultiplereaders is returned 江苏昆山小城,欢迎交流 本职工作五金模具设计及加工 及cad软件开发 没有啊,层表记录只有在获得层表记录时以kforread模式打开的,然后马上用upgradeopen()函数将其改为kforwrite状态。应该是没有问题的。 还有一个问题是:同是这个程序,放在另外一个工程中并没有这样的问题,百思不得其解。 silence of happiness.... 不好意思,我是现在还是菜鸟,还有很多的问题不懂呢.... 望有达人们来解决吧 江苏昆山小城,欢迎交流 本职工作五金模具设计及加工 及cad软件开发 我还未为达人,建议看看帮助文件 |
所有的时间均为北京时间。 现在的时间是 11:44 AM. |