レジストリでタスクマネージャーの実行をブロックするように
This commit is contained in:
parent
4d391c7a9a
commit
0b03527e33
1 changed files with 9 additions and 24 deletions
|
@ -4,9 +4,7 @@ import json
|
|||
import customtkinter
|
||||
from winotify import Notification, audio
|
||||
import keyboard
|
||||
import wmi
|
||||
import subprocess
|
||||
import asyncio
|
||||
|
||||
class App(customtkinter.CTk):
|
||||
def __init__(self):
|
||||
|
@ -20,11 +18,12 @@ class App(customtkinter.CTk):
|
|||
self.restore_button = customtkinter.CTkButton(self.frame, text='認証ウィンドウを再表示', command=self.handler_close, width=240)
|
||||
self.restore_button.grid(row=0, column=0)
|
||||
|
||||
asyncio.run(self.task_watcher_run())
|
||||
self.block_taskmgr
|
||||
self.block_key()
|
||||
lock = Lock()
|
||||
|
||||
def exit(self):
|
||||
self.unlock_taskmgr()
|
||||
self.toast()
|
||||
self.destroy()
|
||||
|
||||
|
@ -33,6 +32,12 @@ class App(customtkinter.CTk):
|
|||
for i in block_keys:
|
||||
keyboard.block_key(i)
|
||||
|
||||
def block_taskmgr(self):
|
||||
subprocess.run(['reg', 'add', 'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System', '/v', 'DisableTaskMgr', '/t', 'REG_DWORD', '/d', '1'])
|
||||
|
||||
def unlock_taskmgr(self):
|
||||
subprocess.run(['reg', 'delete', 'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System', '/v', 'DisableTaskMgr', '/f'])
|
||||
|
||||
def toast(self):
|
||||
resource_path = os.path.join(os.path.dirname(os.path.realpath(__file__)), "resource")
|
||||
success = Notification(
|
||||
|
@ -44,24 +49,6 @@ class App(customtkinter.CTk):
|
|||
success.set_audio(audio.Default, loop=False)
|
||||
success.show()
|
||||
|
||||
async def task_watcher_run(self):
|
||||
taskmgr_killer = asyncio.create_task(self.task_watcher())
|
||||
|
||||
async def task_watcher(self):
|
||||
c=wmi.WMI()
|
||||
cre_process_watcher=c.Win32_Process.watch_for("creation")
|
||||
del_process_watcher=c.Win32_Process.watch_for("deletion")
|
||||
|
||||
self.i = 1
|
||||
|
||||
while self.i == 1:
|
||||
new_cre_process=cre_process_watcher()
|
||||
new_del_process=del_process_watcher()
|
||||
print(new_cre_process.Caption+" has been created")
|
||||
if new_cre_process.Caption == "Taskmgr.exe":
|
||||
taskmgr_kill = subprocess.run(['taskkill', '/im', 'Taskmgr.exe'])
|
||||
print(new_del_process.Caption+" has been deleted ")
|
||||
|
||||
def handler_close(self):
|
||||
pass
|
||||
|
||||
|
@ -121,9 +108,6 @@ class Lock(customtkinter.CTkToplevel):
|
|||
self.destroy()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
config_dir_path = "./config/"
|
||||
db_config_path = config_dir_path + "db.json"
|
||||
if not os.path.isfile(db_config_path):
|
||||
|
@ -147,3 +131,4 @@ if __name__ == '__main__':
|
|||
app = App()
|
||||
app.protocol("WM_DELETE_WINDOW", app.handler_close)
|
||||
app.mainloop()
|
||||
|
||||
|
|
Loading…
Reference in a new issue