-
Автор темы
- #1
Прив,эт моя первая работа на питоне.Мне лень дорабатывать эту штуку так что делайте сами
Не над поливать говном меня так как это первая работа
Не над поливать говном меня так как это первая работа
Код:
import os
import shutil
import tkinter as tk
from tkinter import BooleanVar, messagebox
import winreg
import ctypes
import sys
j_count = 0
z_count = 0
close_mc_var = None
backup_path = r"C:\Windows\System32\Backup"
cheat_folders = [
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Nursultan"),
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Expensive"),
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Delta"),
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Arbuz"),
]
scan_paths = [
os.path.expandvars(r"%USERPROFILE%\Desktop"),
os.path.expandvars(r"%USERPROFILE%\Downloads"),
"C:\\",
"D:\\"
]
def is_admin():
try:
return ctypes.windll.shell32.IsUserAnAdmin()
except:
return False
def run_as_admin():
if is_admin():
main()
else:
ctypes.windll.shell32.ShellExecuteW(
None, "runas", sys.executable, " ".join(sys.argv), None, 1)
def close_minecraft():
if close_mc_var.get():
os.system("taskkill /IM javaw.exe /F")
def hide_cheats():
close_minecraft()
if not os.path.exists(backup_path):
os.makedirs(backup_path)
for folder in cheat_folders:
if os.path.exists(folder):
try:
backup_folder = os.path.join(backup_path, os.path.basename(folder))
shutil.move(folder, backup_folder)
print(f"Папка {folder} перемещена в {backup_folder}")
except Exception as e:
print(f"Ошибка при перемещении {folder}: {e}")
clean_browser_data()
clean_temp_data()
messagebox.showinfo("Информация", "Все читы и данные успешно скрыты и перемещены.")
def clean_temp_data():
temp_folders = [
os.path.expandvars(r"%USERPROFILE%\AppData\Local\Temp"),
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Temp"),
r"C:\Windows\Temp"
]
for folder in temp_folders:
if os.path.exists(folder):
try:
shutil.rmtree(folder)
print(f"Удалена папка: {folder}")
except Exception as e:
print(f"Ошибка при удалении {folder}: {e}")
def clean_browser_data():
browser = detect_default_browser()
browser_data_folders = []
if browser == "Chrome":
browser_data_folders = [
os.path.expandvars(r"%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default\History"),
os.path.expandvars(r"%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default\Cookies"),
os.path.expandvars(r"%USERPROFILE%\Downloads"),
]
elif browser == "Opera":
browser_data_folders = [
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Opera Software\Opera Stable\History"),
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Opera Software\Opera Stable\Cookies"),
os.path.expandvars(r"%USERPROFILE%\Downloads"),
]
elif browser == "Firefox":
browser_data_folders = [
os.path.expandvars(r"%USERPROFILE%\AppData\Roaming\Mozilla\Firefox\Profiles"),
os.path.expandvars(r"%USERPROFILE%\Downloads"),
]
for folder in browser_data_folders:
try:
if os.path.exists(folder):
if os.path.isdir(folder):
shutil.rmtree(folder)
else:
os.remove(folder)
print(f"Удален файл или папка: {folder}")
except Exception as e:
print(f"Ошибка при удалении {folder}: {e}")
def detect_default_browser():
try:
reg_path = r"Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice"
with winreg.OpenKey(winreg.HKEY_CURRENT_USER, reg_path) as key:
prog_id = winreg.QueryValueEx(key, "ProgId")[0]
if "ChromeHTML" in prog_id:
return "Chrome"
elif "FirefoxURL" in prog_id:
return "Firefox"
elif "OperaStable" in prog_id:
return "Opera"
else:
return "Unknown"
except Exception as e:
print(f"Не удалось определить браузер: {e}")
return "Unknown"
def restore_data():
global j_count, z_count
j_count = 0
z_count = 0
restore_window = tk.Toplevel(root)
restore_window.title("Восстановление")
restore_window.geometry("300x200")
restore_label = tk.Label(restore_window, text="Нажмите J 10 раз, затем Z 10 раз для восстановления")
restore_label.pack(pady=20)
restore_window.bind("<KeyPress>", check_restore_sequence)
restore_window.mainloop()
def check_restore_sequence(event):
global j_count, z_count
if event.char == 'j':
j_count += 1
elif event.char == 'z':
z_count += 1
if j_count == 10 and z_count == 10:
restore_files()
messagebox.showinfo("Информация", "Восстановление выполнено!")
def restore_files():
if os.path.exists(backup_path):
for root, _, files in os.walk(backup_path):
for file in files:
src = os.path.join(root, file)
dest = os.path.join("C:\\", os.path.relpath(src, backup_path))
try:
if not os.path.exists(os.path.dirname(dest)):
os.makedirs(os.path.dirname(dest))
shutil.move(src, dest)
print(f"Папка или файл {src} восстановлен в {dest}")
except Exception as e:
print(f"Ошибка при перемещении {src}: {e}")
def main():
global close_mc_var
root = tk.Tk()
root.title("Hider // Grand")
root.geometry("400x300")
root.configure(bg="white")
close_mc_var = BooleanVar()
hide_button = tk.Button(root, text="Скрыть", command=hide_cheats, bg="white")
hide_button.pack(pady=50)
close_mc_check = tk.Checkbutton(root, text="Закрывать Minecraft", variable=close_mc_var, bg="white")
close_mc_check.pack()
info_button = tk.Button(root, text="Информация", command=restore_data, bg="white")
info_button.pack(pady=10)
root.mainloop()
if __name__ == "__main__":
run_as_admin()