From 77ada9a5e27354a5825fe92ceca5d5d760737f82 Mon Sep 17 00:00:00 2001 From: suti7yk5032 Date: Fri, 30 Aug 2024 23:29:50 +0900 Subject: [PATCH] =?UTF-8?q?=E5=89=8A=E9=99=A4=E5=87=A6=E7=90=86=E3=81=AE?= =?UTF-8?q?=E7=B9=B0=E3=82=8A=E8=BF=94=E3=81=97=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dislocker_client.py | 54 +++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/dislocker_client.py b/dislocker_client.py index f8bd131..32e10ea 100644 --- a/dislocker_client.py +++ b/dislocker_client.py @@ -388,40 +388,42 @@ class Stop(): print(f"エラー: 指定されたディレクトリ {dir_path} が存在しません。") return 1 - try: - # プロセスの終了 - subprocess.run(['taskkill', '/f', '/t', '/im', process_name]) - print(f"{process_name} を終了しました。") + i = 0 + i_max = 10 + result = 1 + while i != i_max: + i += 1 + try: + # プロセスの終了 + subprocess.run(['taskkill', '/f', '/t', '/im', process_name]) + print(f"{process_name} を終了しました。") - time.sleep(0.1) + time.sleep(0.1) - # ディレクトリの削除 - i = 1 - ic = 0 - while i == 1: + # ディレクトリの削除 + shutil.rmtree(dir_path) if os.path.isdir(dir_path): - ic += 1 - if ic == 10: - i = 0 + pass else: - i = 0 print(f"{dir_path} を削除しました。") + result = 0 + i = i_max - return 0 + except subprocess.CalledProcessError as e: + print(f"プロセス終了エラー: {e}") + + except PermissionError as e: + print(f"権限エラー: {e}") + + except Exception as error: + print("エラーが発生しました。\nエラー内容:") + print(f"エラータイプ: {error.__class__.__name__}") + print(f"エラー引数: {error.args}") + print(f"エラーメッセージ: {str(error)}") + + return result - except subprocess.CalledProcessError as e: - print(f"プロセス終了エラー: {e}") - return 1 - except PermissionError as e: - print(f"権限エラー: {e}") - return 1 - except Exception as error: - print("エラーが発生しました。\nエラー内容:") - print(f"エラータイプ: {error.__class__.__name__}") - print(f"エラー引数: {error.args}") - print(f"エラーメッセージ: {str(error)}") - return 1 def shutdown(self): shutdown_command = subprocess.run(['shutdown', '/s', '/t', '1'])