guohq 发表于 2010-8-6 17:02:00

这个出错应该怎么处理?

<p><font face="Verdana">&nbsp;&nbsp;&nbsp; Public Function CurveLength(ByVal ID As ObjectId, ByRef Len As Double) As Boolean<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurveLength = True<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dim DB As Database = HostApplicationServices.WorkingDatabase</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using Trans As Transaction = DB.TransactionManager.StartTransaction<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Try<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dim Ent As Entity = Trans.GetObject(ID, OpenMode.ForRead)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dim Cur As Curve = Ent '此处如果不是线,会出错,用了TRY了,为什么不能跳到CATCH 处执行<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Len = Cur.GetDistanceAtParameter(Cur.EndParam)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Catch ex As Exception<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurveLength = False<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox("不正常")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End Try<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End Using<br/>&nbsp;&nbsp;&nbsp; End Function</font></p>
<p>&nbsp;</p>
<p>Dim Cur As Curve = Ent '此处如果不是线,会出错,用了TRY了,为什么不能跳到CATCH 处执行<br/></p>

雪山飞狐_lzh 发表于 2010-8-6 19:15:00

If Ent Is Curve Then

guohq 发表于 2010-8-6 20:29:00

<p>谢谢!我想问的是为什么此处出错,不跳到CATCH处执行呢?</p>
页: [1]
查看完整版本: 这个出错应该怎么处理?