方法 : Visual Basic で Catch ブロックを使用してエラーをフィルタ処理する
更新 : 2007 年 11 月
Catch ステートメントでは、いくつかの方法でエラーをフィルタできます。1 つは、例外の種類によってフィルタする方法です。この場合、特殊な例外から一般的な例外へと順にキャッチしていくことが重要です。Catch ステートメントは、指定されている順序で実行されるためです。
特定のエラー番号などの条件式によってフィルタする場合には、When 句も使用できます。両方の方法を組み合わせて使用することもできます。
メモ : |
---|
使用している設定またはエディションによっては、ダイアログ ボックスで使用可能なオプションや、メニュー コマンドの名前や位置がヘルプに記載されている内容と異なる場合があります。このヘルプ ページは、全般的な開発設定を考慮して記述されています。設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。詳細については、「Visual Studio の設定」を参照してください。 |
例外の種類によってフィルタするには
チェックする例外のそれぞれの種類について、最も特殊な例外から一般的な例外へと順に Catch ステートメントを挿入します。
Try Throw New Exception Catch ex As System.IO.IOException ' Code reacting to IOException Catch ex As System.NullReferenceException ' Code reacting to NullReferenceException Catch ex As Exception ' Code reacting to any exception End Try
条件式によってフィルタするには
条件式によってフィルタする場合は、Catch When ステートメントを使用します。条件式が True に評価されると、その Catch ブロックに続くコードが実行されます。
Try ' Code goes here. ' Check for type mismatch error. Catch ex As Exception When Err.Number = 5 ' Code reacting to exception. End Try
参照
処理手順
概念
例外処理 (Visual Basic 6.0 ユーザー向け)
参照
Try...Catch...Finally ステートメント (Visual Basic)