文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

基于Python制作简易的windows修改器

2024-04-02 19:55

关注

现在应该大部分人都使用win11系统吧,不用也要强行给你更新到win11,win11其实挺好用哈,只是有一点不好用,就是右键的菜单,今天做个小程序,就是应该修改win11的一个应用程序

先来看一段视频哈!

视频链接

windows11修改器

提取码:v9ms 源代码加编译后的文件

提取码:enr4 该程序的安装包 已被博主做成了安装包

这款软件纯python制作,内容简单

1、可以将win11的右键改为win10经典版,还可以进行恢复

2、可以去掉win11右键的终端(也就是win11的最高管理员窗口),win10可没有

3、可以修改桌面任务栏的最对齐或居中对齐

全面的三哥功能只能在win11里操作,win10没有任何效果,接下来的功能是可以在win10 和 win11 里进行操作的

这两个功能可以能对普通人没有太大的用哈,尤其是win10,

【添加记事本】最高对关于编程的人来说用的很多,有的时候看到不明文件就要右键用记事本打开看看,我就是这样哈,所以不知道代码的这个就不要操作了,因为会占你的右键菜单位置哈

【固定任务栏】这个对对于win10就没必要了,因为这个主要是添加应用程序到任务栏,可以快捷的操作,win10可以直接拖拽到任务栏已到达到固定的效果,win11就不一样了,win11这个必须要右键文件在菜单里找到固定到任务栏,否则是没有办法固定到任务栏的

所以说,这个小程序就是为win11定制开发的,win10没必要,但是可以收藏一下,你们早晚要用到win11系统,以后可以用这个软件快捷操作嘛,如果遇到同事不会操作也可以用这个软件装一下。

废话不多说 完整代码:

import tkinter
from tkinter import *
from tkinter.ttk import *
from PIL import Image
import win32api,win32con
import os
import wmi
import subprocess
def main():
    root = Tk()
    root.title('剑工坊-Windongs-修改器')  # 程序的名称
    root.geometry("480x320+512+288")  # 窗口的大小及页面的显示位置
    root.resizable(False, False)  # 固定页面不可放大缩小
    root.iconbitmap("picture.ico")  # 程序的图标
 
    canvas = tkinter.Canvas(root, bg="#ebebeb", height=400, width=700, borderwidth=-3)  # 创建画布
    canvas.pack(side='top')  # 放置画布(为上端)
 
    canvas_4 = tkinter.Canvas(root, bg="#ebebeb", height=200, width=300, borderwidth=-2)
    canvas_4.place(x=-40, y=40)
 
    image_file_4 = tkinter.PhotoImage(file="./windwos10.png")  # 加载图片文件
    canvas_4.create_image(0, 0, anchor='nw', image=image_file_4)  # 将图片置于画布上
    def Label():
        # 标签
        tkinter.Label(canvas, bg="#ebebeb", fg='#8f8f8f', text='适配:win10、win11').place(x=350, y=290)
        w = wmi.WMI()
        for OS in w.Win32_OperatingSystem():
            windwos = 'Windows 10'
            RR = OS.Caption  # Microsoft Windows 10 家庭中文版
            if RR.find(windwos) == 10:
                tkinter.Label(canvas, bg="#ebebeb",fg='#575757' ,text='当前版本:Windwos 10').place(x=10, y=290)
            else:
                windwos_2 = 'Windows 11'
                if RR.find(windwos_2) == 10:
                    tkinter.Label(canvas, bg="#ebebeb",fg='#575757' , text='当前版本:Windwos 11').place(x=10, y=290)
                else:
                    tkinter.Label(canvas, bg="#ebebeb",fg='#575757' , text='未检测出系统版本!!').place(x=10, y=290)
 
    Label()
 
    
 
 
 
    # windwos 标志
    canvas_3 = tkinter.Canvas(root, bg="#ebebeb", height=50, width=480, borderwidth=-2)
    canvas_3.place(x=0, y=0)
    image_file_3 = tkinter.PhotoImage(file="./windows.png")  # 加载图片文件
    canvas_3.create_image(0, 0, anchor='nw', image=image_file_3)  # 将图片置于画布上
 
    # 放置二维码
    canvas_2 = tkinter.Canvas(root, bg="red", height=80, width=200, borderwidth=-2)
    canvas_2.place(x=250, y=50)
    image_file_2 = tkinter.PhotoImage(file="./share.png")  # 加载图片文件
    canvas_2.create_image(0, 0, anchor='nw', image=image_file_2)  # 将图片置于画布上
 
    def Align_left():  # 左对齐
        subprocess.Popen("reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v TaskbarAl /t REG_DWORD /d 0 /f", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
    def Right_align():  # 居中对齐
        subprocess.Popen("reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v TaskbarAl /t REG_DWORD /d 1 /f", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
    def Right_click_Add():  # 右键添加 记事本打开
        subprocess.Popen(
            "reg add HKEY_CLASSES_ROOT\*\shell\用记事本打开 /v HasLUAShield /f",
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
        subprocess.Popen(
            "reg add HKEY_CLASSES_ROOT\*\shell\用记事本打开 /v ICON /d C:/windows/system32/notepad.exe /f",
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        subprocess.Popen(
            "reg add HKEY_CLASSES_ROOT\*\shell\用记事本打开 /v SeparatorBefore /d \ /f",
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        subprocess.Popen(
            "reg add HKEY_CLASSES_ROOT\*\shell\用记事本打开 /v SeparatorAfter /d \ /f",
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        subprocess.Popen(
            "reg add HKEY_CLASSES_ROOT\*\shell\用记事本打开 /v Position /d Center /f",
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        subprocess.Popen(
            'reg add HKEY_CLASSES_ROOT\*\shell\用记事本打开\command /d "notepad.exe ""%1""" /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
    def Fixed_taskbar():   # 固定到任务栏
        subprocess.Popen(
            'reg add HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\{90AA3A4E-1CBA-4233-B8BB-535773D48449} /d "Taskband Pin" /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
 
    def Windows_Terminal():   # 去除右键(Open in Windows Terminal)项
        subprocess.Popen(
            'reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked" /v {9F156763-7844-4DC4-B2B1-901F640F5155} /d "Windows Terminal" /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
    def default_Windows_Terminal():  # 恢复右键(Open in Windows Terminal)项
        subprocess.Popen(
            'reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked" /v {9F156763-7844-4DC4-B2B1-901F640F5155} /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
 
    def Old_right_button():  # 右键改为win10
        subprocess.Popen(  # 恢复右键(Open in Windows Terminal)项
            'reg add HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32 /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        T = win32api.MessageBox(0, "刷新后即可显现 是否刷新", "安全窗口", win32con.MB_YESNO)
        if T == 6:  # 6表示是
            subprocess.Popen(  # 恢复右键(Open in Windows Terminal)项
                'sihost.exe',
                shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    def New_right_button():   # 右键改为win11
        subprocess.Popen(  # 恢复右键(Open in Windows Terminal)项
            'reg delete HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2} /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        T = win32api.MessageBox(0, "刷新后即可显现 是否刷新", "安全窗口", win32con.MB_YESNO)
        if T == 6:  # 6表示是
            subprocess.Popen(  # 恢复右键(Open in Windows Terminal)项
                'sihost.exe',
                shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
    def default_fiel():   # 恢复默认
        subprocess.Popen(   # 恢复记事本
            'reg delete HKEY_CLASSES_ROOT\*\shell\用记事本打开 /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        subprocess.Popen(  # 恢复固定到任务栏
            'reg delete HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\{90AA3A4E-1CBA-4233-B8BB-535773D48449} /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        subprocess.Popen(   # 恢复右键(Open in Windows Terminal)项
            'reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked" /v {9F156763-7844-4DC4-B2B1-901F640F5155} /f',
            shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        Right_align()  # 任务栏居中
        New_right_button()   # 右键改为win11
        T = win32api.MessageBox(0, "刷新后即可恢复 是否刷新", "安全窗口", win32con.MB_YESNO)
        if T == 6:  # 6表示是
            subprocess.Popen(  # 恢复右键(Open in Windows Terminal)项
                'sihost.exe',
                shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
 
 
    Button(root, text='任务栏左对齐',width=14,   command=Align_left).place(x=238, y=130)
    Button(root, text='任务栏居中对齐',width=14, command=Right_align).place(x=356, y=130)
 
    Button(root, text='右键添加(用记事本打开)',width=31, command=Right_click_Add).place(x=238, y=160)
    Button(root, text='右键添加(固定任务栏)',width=31, command=Fixed_taskbar).place(x=238, y=190)
 
    Button(root, text='去除右键的(Open in Windows Terminal)项', width=44, command=Windows_Terminal).place(x=90, y=220)
    Button(root, text='右键改为经典win10',width=44, command=Old_right_button).place(x=90, y=250)
    Button(root, text='恢复\n 全\n默认', width=7, command=default_fiel).place(x=410, y=220)
    Button(root, text='恢复终端', width=10, command=default_Windows_Terminal).place(x=10, y=220)
    Button(root, text='恢复win11', width=10, command=New_right_button).place(x=10, y=250)
 
    root.mainloop() #运行
 
if __name__ == '__main__':
    main()

到此这篇关于基于Python制作简易的windows修改器的文章就介绍到这了,更多相关Python windows修改器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯