查看单个帖子
旧 2009-05-07, 05:17 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】rouble Cloning Linetypes

trouble cloning linetypes
trouble cloning linetypes
hi,
i open 1 drawing and create 1 new drawing, then use wblockcloneobjects to copy a single linetype from the exsiting drawing to the new drawing. the exception is thrown, then auditdatabase gives the textstyle errors:
first-chance exception at 0x7c81eb33 in unittests.exe: microsoft c++ exception: oderror_duplicaterecordname @ 0x0012f600.
acdbtextstyletablerecord(2b) duplicate record name "standard" invalid $ddt_audit_generated_(2b)
acdbtextstyletablerecord(2b) last height 0 is invalid >0 2.5
40 objects audited
total errors found during audit 2, fixed 2
next i erase the new linetype from the new drawing. auditdatabase gives:
acdblinetypetable(5) linetype continuous missed invalid create
acdblinetypetable(5) linetype continuous has invalid index 2 0 0
40 objects audited
total errors found during audit 2, fixed 2
a following auditdatabase gives:
acdblinetypetablerecord(16) duplicate record name "continuous" invalid $ddt_audit_generated_(16)
40 objects audited
total errors found during audit 1, fixed 1
can someone please tell me what these error messages are indicating?
is it possible to copy linetypes between drawings using wblockcloneobjects?
thanks,
erle
hi,
i could not reproduce this problem with the latest dd 1.12 version.
to copy linetypes with wblockcloneobjects() you can use the next code:
code:
oddbidmappingptr pmap = oddbidmapping::createobject();
pmap->setdestdb(pdestdb);
oddbobjectidarray ltids; // array with linetype ids
psrcdb->wblockcloneobjects(ltids, pdestdb->getlinetypetableid(),*pmap,oddb::kdrcignore);
regards,
sergey vishnevetsky
hi sergey,
i think some of my problems are related to using the static linked version of dwgdirect across multiple dll's. i'm compiling with msvc++ 2002 version 7.0 and there are only lib files in the download for that version.
thanks for the code example, that's basically what i was doing, except my test code was in a seperate dll from the main code, and i was passing object pointers between the dll's.
would it be possible to get a dll build for msvc 2002? we will probably upgrade our compilers when visual studio 2005 comes out, but that's not for another 6 months or so.
thanks,
erle
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)