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

recomputedimblock crash
recomputedimblock crash
hello everybody,
i am using the vc6md libraries version 1.14.1.0.
the following code :
oddbaligneddimensionptr dwgdim = oddbaligneddimension::createobject() ;
oddbblocktablerecordptr modelspace = pdatabase->getmodelspaceid().safeopenobject(oddb::kforwrit e) ;
modelspace->appendoddbentity(dwgdim) ;
dwgdim->setdatabasedefaults(pdatabase) ;
dwgdim->setdimensionstyle(pdatabase->getdimstylestandardid());
dwgdim->setdimensiontext("text");
dwgdim->setnormal(odgevector3d(0.,0.,1.)) ;
dwgdim->setdimlinepoint(odgepoint3d(0.,0.,0.)) ;
dwgdim->setxline1point(odgepoint3d(1.,0.,0.)) ;
dwgdim->setxline2point(odgepoint3d(-1.,0.,0.)) ;
dwgdim->usedefaulttextposition();
dwgdim->recomputedimblock() ;
crashes on recomputedimblock. my stack looks like this :
kernel32! 7c81eb33()
msvcrtd! _cxxthrowexception@8 + 57 bytes
oddbdimensionrecomputepeloader::getrecomputer(clas s oddbdimension *) + 172 bytes
oddbdimensionrecomputepeloader::recomputedimblock( class oddbdimension *) + 37 bytes
oddbdimension::recomputedimblock(bool) + 126 bytes
it seems to happen for all kind of dimension.
the recomputedimension.drx file is in the application directory.
i tried to add the line ":drxdynamiclinker()->loadapp("recomputedimblock").release();", after odinitialize, but it changed nothing.
has anyone got an idea ?
thank you in advance for help.
what does loadapp() return?
it seems that recomputedimblock.drx is missing in dll build or if you use static build the module is not included into your application.
see
sergey slezkin
just wrong libraries
it seems i was not linking with the good libraries. since i have been using the dd_x_dll.lib instead of the dd_vc6md_x.lib, the bug disappeared.
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)