方法 : Visual Basic で Try...Finally ブロックを使用してリソースをクリーンアップする
更新 : 2007 年 11 月
Try ブロック内で Finally ステートメントを使用すると、割り当てられているリソースを確実に解放できます。Finally ブロック内のコードは、例外処理コードの後で、呼び出し元のプロシージャに制御を返す前に実行されます。Finally ブロック内のコードは、たとえコードで例外がスローされた場合でも、また、Catch ブロック内に明示的な Exit Function ステートメント (または Exit Sub ステートメント) がある場合でも実行されます。
特定の例外をキャッチする必要がない場合には、Using ステートメントを使用すると TrycFinally ブロックと同じように動作し、どのようにブロック内の処理が終了する場合でも確実にリソースを解放できます。これは、未処理の例外の場合にも該当します。詳細については、「Using ステートメント (Visual Basic)」を参照してください。
Finally ステートメントを使用してリソースをクリーンアップするには
例外の種類にかかわらず実行するコードを、Finally ブロック内に配置します。次のコードでは、StreamReader を作成し、これを使用してファイルを読み込みます。
Dim reader As New System.IO.StreamReader("C:\testfile") Try reader.ReadToEnd() Catch ex As System.IO.IOException MsgBox("Could not read file") Finally 'This command is executed whether or not the file can be read reader.Close() End Try
参照
処理手順
方法 : Visual Basic で Try...Catch ブロックを使用してコードを検査する
概念
例外処理 (Visual Basic 6.0 ユーザー向け)