吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 47|回复: 0
上一主题 下一主题
收起左侧

[Python 原创] 蓝屏摸鱼

[复制链接]
跳转到指定楼层
楼主
sfc4621 发表于 2026-3-9 14:31 回帖奖励
本帖最后由 hrh123 于 2026-3-9 23:44 编辑

伪装电脑蓝屏
import tkinter as tk
import random
import time
from tkinter import font

# 创建主窗口
root = tk.Tk()
root.title("Windows Blue Screen Simulator")
root.attributes('-fullscreen', True)  # 全屏
root.configure(bg='#000080')  # 经典蓝屏蓝色

# 设置字体
try:
    # 尝试使用等宽字体
    text_font = font.Font(family='Consolas', size=12)
    title_font = font.Font(family='Consolas', size=16, weight='bold')
    error_font = font.Font(family='Courier', size=14, weight='bold')
except:
    # 备用字体
    text_font = font.Font(family='Courier', size=12)
    title_font = font.Font(family='Courier', size=16, weight='bold')
    error_font = font.Font(family='Courier', size=14, weight='bold')

# 生成随机错误代码
error_code = f"0x{random.randint(10000000, 0xFFFFFFFF):X}"

# 存储按键状态的变量
pressed_keys = set()

# 蓝屏文本内容
# 修复了原代码中直接将pack()结果赋值的错误
tk.Label(root, text="你的电脑遇到问题,需要重新启动。我们只收集某些错误信息,然后你可以重新启动。", 
          bg='#000080', fg='white', font=title_font).pack(anchor='w', padx=50, pady=(50, 20))

tk.Label(root, text=f"错误代码: {error_code}", 
          bg='#000080', fg='yellow', font=error_font).pack(anchor='w', padx=50, pady=(0, 20))

# 进度标签(命名以便后续获取)
progress_label = tk.Label(root, text="收集内存转储信息... 0%", 
                          bg='#000080', fg='white', font=text_font, name='progress_label')
progress_label.pack(anchor='w', padx=50, pady=(0, 10))

# 进度条画布(命名以便后续获取)
progress_bar = tk.Canvas(root, width=800, height=20, bg='#000080', highlightthickness=2, highlightbackground='white', name='progress_bar')
progress_bar.pack(anchor='w', padx=50, pady=(0, 30))

tk.Label(root, text=f"""技术信息:
*** STOP: {error_code} (0x{random.randint(10000000, 0xFFFFFFFF):X}, 
0x{random.randint(10000000, 0xFFFFFFFF):X}, 0x{random.randint(10000000, 0xFFFFFFFF):X}, 
0x{random.randint(10000000, 0xFFFFFFFF):X})

如果这是你第一次看到此停止错误屏幕,请重启你的电脑。如果此屏幕再次出现,
请按照下列步骤操作:

检查以确保新的硬件或软件已正确安装。如果这是新安装,请向你的硬件或软件
制造商询问你可能需要的Windows更新。

如果问题继续,禁用或删除任何新安装的硬件或软件。禁用BIOS内存选项,
例如缓存或阴影。如果你需要使用安全模式删除或禁用组件,请重启电脑,
按F8键选择高级启动选项,然后选择安全模式。

有关此问题的技术信息,请访问 https://support.microsoft.com

收集完信息后将自动重启你的电脑...""", 
          bg='#000080', fg='white', font=text_font, justify='left').pack(anchor='w', padx=50, pady=(0, 20))

# 绘制进度条背景
progress_bar.create_rectangle(0, 0, 800, 20, outline='white', width=2)
progress_fill = progress_bar.create_rectangle(2, 2, 2, 18, fill='yellow', outline='')

progress = 0

def update_progress():
    """更新进度条"""
    global progress
    if progress < 100:
        progress += random.uniform(0.05, 0.15)
        # 更新进度文本
        progress_label.config(text=f"收集内存转储信息... {min(int(progress), 100)}%")
        # 更新进度条
        progress_bar.coords(progress_fill, 2, 2, int(796 * progress / 100), 18)

    if progress >= 100:
        # 进度到100%后重置
        # 改用tkinter的after代替time.sleep,避免界面卡死
        root.after(2000, reset_progress)

    # 循环调用
    root.after(50, update_progress)

def reset_progress():
    """重置进度条"""
    global progress
    progress_bar.coords(progress_fill, 2, 2, 2, 18)
    progress = 0

def on_key_press(event):
    """按键按下事件处理"""
    # 将按下的键加入集合
    pressed_keys.add(event.keysym)
    # 检查是否同时按下F5和F4
    if 'F5' in pressed_keys and 'F4' in pressed_keys:
        root.destroy()

def on_key_release(event):
    """按键释放事件处理"""
    # 从集合中移除释放的键
    if event.keysym in pressed_keys:
        pressed_keys.remove(event.keysym)

# 绑定F5和F4的按下/释放事件
root.bind('<KeyPress>', on_key_press)
root.bind('<KeyRelease>', on_key_release)

# 启动进度更新
update_progress()

# 运行主循环
root.mainloop()

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - 52pojie.cn ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2026-3-10 04:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表