查看单个帖子
旧 2009-05-05, 10:00 AM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】exception on certain dwgs in sinlgedoc sample code

exception on certain dwgs in sinlgedoc sample code
exception on certain dwgs in sinlgedoc sample code
i'm am getting a 0xc0000005 access violation in the singledoc sample code with certain dwg files. seems to be related to when the view is a perspective projection.
this same thing is happening in my application but found it to be reproducable with singledoc code (unmodifed) in dwgdirect1.13. i've attached a sample dwg to re-produce the problem.
here is the call stack when this exception occurs.
odgigeometrymetafile::add(odgigeometrymetafile::re cord * 0x01619b50) line 104 + 7 bytes
odgimetafilerimpl::add(odgigeometrymetafile::recor d * 0x01619b50) line 15
odgimetafilerimpllylineproc(long 5, const odgepoint3d * 0x01619a98, const odgevector3d * 0x00000000, const odgevector3d * 0x00000000, long -1) line 263
odgixformimpllylineproc(long 5, const odgepoint3d * 0x0012e95c, const odgevector3d * 0x00000000, const odgevector3d * 0x00000000, long -1) line 96 + 79 bytes
odgibasevectorizerlylinedc(unsigned long 5, const odgepoint3d * 0x0012e95c) line 1324 + 41 bytes
odgsbasevectorizeview::drawviewportframe() line 1685 + 32 bytes
odgsbasevectorizeview::update() line 1663 + 16 bytes
exgdivectorizeview::update() line 281
odgsbasevectorizedevice::update(odgsdcrect * 0x00000000) line 193 + 16 bytes
exgsgdivectorizedevice::update(odgsdcrect * 0x00000000) line 127
odgspaperlayouthelperimpl::update(odgsdcrect * 0x00000000) line 331 + 43 bytes
csingledocview:npaint() line 182 + 29 bytes
i do not see the file. make sure it was attached.
vladimir
here is the file "sextant.dwg" which i obtained for the acad 2k samples
attached files (70.7 kb, 5 views)


this is a bug of 1.13. thank you for a very explicit bugreport. next update of 1.13 and dd 1.14 will contais fix for this bug.
you can go round this bug by not setting to true viewport border visibility. if you comment out this line:
code:
pview->setviewportbordervisibility(true);
(singledocview.cpp), this bug won't appear.
sincerely yours,
george udov
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)