特定の関数でフォームを表示しない限り、正常に機能しているように見える小さなVBプロジェクトがあります。
以下のコードでは、form_progress
が示されていますが(その後、関数の後半で非表示になっています)、実行が終了してもプロセスは終了しません(すべてのフォームが閉じられます)。その結果、手動で終了しない限り、デバッグでスタックします。コメントアウトした場合form_progress.Show()
、すべてのフォームが閉じられると、プロセスは期待どおりに終了することに注意してください。
最初はフォームの問題に焦点を合わせましたform_progress
が、そうではありません。この時点で表示するフォームがこの問題を引き起こします。エラーは発生していないので、どこを見ればいいのか迷ってしまいます。誰かが何か提案があれば、私はそれを評価したいと思います。ありがとう。
Public Sub complete_action(folder As String, rename As Boolean, include_sub_folders As Boolean)
Dim dir As DirectoryInfo ' The directory that they user selected as an object
Dim output As String ' The output to be placed in the log
' Set 'output' to be an empty string (to avoid errors)
output = ""
Try
form_progress.Show()
' Set the DirectoryInfo object from the users selected directory name
dir = New DirectoryInfo(folder)
If include_sub_folders Then
output = recursive_loop(dir, rename, output)
Else
output = loop_folder(dir, folder, rename)
End If
' Write the log file
write_text.Log_File.write_to_file(output)
form_progress.Hide()
Catch oError As Exception
functions.error_handler(oError, "Error when looping through files", "complete_action")
End Try
End Sub