![]() |
【转帖】arx数据库操作求助
arx数据库操作求助
arx数据库操作求助 // // objectarx defined commands #include "stdafx.h" #include "stdarx.h" #include "dbsymtb.h" #include "dbents.h" // this is command 'createdwg' void defcreatedwg() { acdbdatabase *pdb=new acdbdatabase(); acdbblocktable *pbtbl; pdb->getsymboltable(pbtbl,acdb::kforread); acdbblocktablerecord *pbtblrcd; pbtbl->getat(acdb_model_space,pbtblrcd, acdb::kforwrite); pbtbl->close(); acdbcircle *pcir1=new acdbcircle(acgepoint3d(1,1,1), acgevector3d(0,0,1), 1.0), *pcir2=new acdbcircle(acgepoint3d(4,4,4), acgevector3d(0,0,1), 2.0); pbtblrcd->appendacdbentity(pcir1); pcir1->close(); pbtblrcd->appendacdbentity(pcir2); pcir2->close(); pbtblrcd->close(); pdb->saveas("test1.dwg"); delete pdb; } // this is command 'readdwg' void defreaddwg() { acdbdatabase *pdb=new acdbdatabase(adesk::kfalse); pdb->readdwgfile("test1.dwg"); acdbblocktable *pblktbl; pdb->getsymboltable(pblktbl,acdb::kforread); acdbblocktablerecord *pblktblrcd; pblktbl->getat(acdb_model_space,pblktblrcd,acdb::kforread); pblktbl->close(); acdbblocktablerecorditerator *pblktblrcditr; pblktblrcd->newiterator(pblktblrcditr); acdbentity *pent; for(pblktblrcditr->start();!pblktblrcditr->done();pblktblrcditr->step()) { pblktblrcditr->getentity(pent,acdb::kforread); acutprintf("classname: %s\n", (pent->isa())->name()); pent->close(); } pblktblrcd->close(); delete pblktblrcditr; delete pdb; } 进入autocad2 读取arx执行readdwg出现 未处理的异常c0000005,地址653f88a6h 下载次数:0 8-10-19 04:12 pm |
| 所有的时间均为北京时间。 现在的时间是 10:40 PM. |