どの例外が発生したかに関係なく、catch ステートメントの後にコード ブロックを実行したいのですが、何らかの例外が発生した場合に限られます。したがって、基本的には、実行するために例外を必要とするのは finally ステートメントです。ビジュアルベーシックでこれを行う簡単な方法はありますか?
4 に答える
1
どうですか
Dim isException As Boolean = False
Try
....
Catch ex As ApplicationException
isException = True
....
Catch ex As Exception
isException = True
....
Finally
If (isException)
....
End If
End Try
于 2013-04-12T22:38:24.507 に答える
1
私はそれが好きではありませんが、ネストされたTry
:
Try
Try
....
Catch ex As ApplicationException
Throw
Catch ex As Exception
Throw
End Try
Catch
' This is your "finally"
End Try
于 2013-04-12T22:44:52.423 に答える
0
If ステートメントの finally ブロックは、例外が発生したかどうかに関係なく、常に呼び出されます。MSDN
これを行う唯一の他の方法は、例外をパラメーターとして受け入れる別のメソッドを用意し、例外キャッチからそのメソッドを呼び出すことです。
于 2013-04-12T22:02:18.553 に答える
0
次のように、さまざまな例外ブロックを追加できます。
Try
' do operation
' Most specific:
Catch e As ApplicationException
' do something only if ApplicationException has occurred
' Least specific:
Catch e As Exception
Console.WriteLine("{0} Second exception caught.", e);
End Try
于 2013-04-12T22:23:28.520 に答える