要件: エラーが発生した場合 (例外がスローされた場合)、処理中のファイルをエラーのあるファイルのフォルダー (app.config 設定) に移動する必要があります。
問題: これを処理する唯一の方法は、メインの Try/Catch 内にネストされた Try/Catch を配置して、ファイルを移動しようとすることです。この方法では、移動が失敗すると、別の例外がスローされます。ディレクトリが存在し、権利が与えられていることを確認するために最善を尽くすことができることはわかっていますが、それはネットワークドライブであるため...ある時点でエラーが発生することはわかっています.
例
Try
(Do Some Logic, but an error happens)
Catch ex As Exception
Try
(Attempt to move file)
Catch exinner as Exception
Throw New Exception("Cannot move file to Error Directory", innerex)
End Try
(Raise Error Event for logging by form/batch app)
End Try
実際、それは私が思っていたよりもさらに恐ろしいものでした。
今、私は何か間違ったことをしていることを知っています。ファイルを移動してイベントを呼び出すことができるように、キャッチで発生する可能性のあるエラーを実際にどのように処理する必要がありますか?