diff --git a/dislocker_client.py b/dislocker_client.py index 5101b7a..09ced37 100644 --- a/dislocker_client.py +++ b/dislocker_client.py @@ -40,7 +40,7 @@ class App(customtkinter.CTk): keyboard.block_key(i) def block_taskmgr(self): - block = subprocess.run(['reg', 'add', 'HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System', '/v', 'DisableTaskMgr', '/t', 'REG_DWORD', '/d', '1']) + block = subprocess.run(['reg', 'add', 'HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System', '/v', 'DisableTaskMgr', '/t', 'REG_DWORD', '/d', 'f', '1']) print(block) def unlock_taskmgr(self): @@ -119,13 +119,13 @@ class Lock(customtkinter.CTkToplevel): self.button_frame.columnconfigure(1, weight=1) self.button_frame.columnconfigure(2, weight=1) - self.signin_button = customtkinter.CTkButton(self.button_frame, text='サインイン', command=self.auth, font=self.button_font) + self.signin_button = customtkinter.CTkButton(self.button_frame, text='サインイン', command=self.auth_start, font=self.button_font) self.signin_button.grid(row=0, column=2, padx=10, sticky="e") self.logout_button = customtkinter.CTkButton(self.button_frame, text='サインアウト', command=self.logout, font=self.button_font) self.logout_button.grid(row=0, column=1, padx=10, sticky="e") - self.signin_button = customtkinter.CTkButton(self.button_frame, text='ヘルプ', command=self.help_wakeup, font=self.button_font) + self.signin_button = customtkinter.CTkButton(self.button_frame, text='ヘルプ', command=self.help_dummy, font=self.button_font) self.signin_button.grid(row=0, column=0, padx=10, sticky="w") self.keyboard_listener_thread = threading.Thread(target=self.keyboard_listener) @@ -142,7 +142,22 @@ class Lock(customtkinter.CTkToplevel): hashed = hashlib.md5(source.encode()) return hashed.hexdigest() + def auth_start(self): + auth_thread = threading.Thread(target=self.auth) + auth_thread.start() + def auth(self): + password = str(self.password_entry.get()) + if len(password) == 10: + print("マスターパスワードで認証を試行します。") + master_password_hash = self.hash_genarate(str(self.password_entry.get())) + if client_config["master_password_hash"] == master_password_hash: + print("マスターパスワードで認証しました。") + self.exit() + else: + print("マスターパスワードで認証できませんでした。") + + print("認証サーバーにアクセスします。") auth_url = client_config["auth_host_url"] + "/verify" auth_json = { @@ -154,6 +169,11 @@ class Lock(customtkinter.CTkToplevel): if responce.status_code == 200: print("認証サーバー経由で認証しました。") self.exit() + else: + print("認証サーバー経由での認証に失敗しました。") + msgbox = tkinter.messagebox.showinfo(title=f"{app_name} | 誤ったパスワード", message=f"パスワードが間違っています!") + self.msg_subtitle_1.configure(text='パスワードが間違っています! ') + except: print("認証サーバーにアクセスできません。マスターパスワードで認証を試行します。") @@ -163,6 +183,7 @@ class Lock(customtkinter.CTkToplevel): self.exit() else: print("マスターパスワードで認証できませんでした。") + msgbox = tkinter.messagebox.showinfo(title=f"{app_name} | ネットワークエラー", message=f"認証サーバーにアクセスできませんでした。\n続行するには、マスターパスワードを入力してください。") self.msg_subtitle_1.configure(text='ネットワークエラーが発生しています。\n続行するには、マスターパスワードを入力して下さい。 ') def logout(self): @@ -174,6 +195,9 @@ class Lock(customtkinter.CTkToplevel): def handler_close(self): pass + def help_dummy(self): + msgbox = tkinter.messagebox.showinfo(title=f"{app_name} | 未実装", message=f"ヘルプページは製作途中です。\nDiscordサーバーの指示に従って、認証を進めてください。") + def exit(self): self.destroy() app.exit() @@ -192,6 +216,8 @@ class Help(customtkinter.CTkToplevel): self.grab_set() self.lift() self.protocol("WM_DELETE_WINDOW", self.handler_close) + msgbox = tkinter.messagebox.showinfo(title=f"{app_name} | 未実装", message=f"ヘルプページは製作途中です。\nDiscordサーバーの指示に従って、認証を進めてください。") + self.destroy() def handler_close(self): self.destroy()