win系统 文件夹备注工具 -python

win系统 文件夹备注工具 -python

一. 操作步骤

  1. 复制代码
  2. 打包成exe
  3. 在win注册表 进行注册
  4. 使用

二. 源码

三. 注册表

  • 创建文件
    addRemarks.reg
  • 用记事本打开
    在这里插入图片描述
  • 输入内容
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Folder\shell\**文件夹备注**\command]
@="D:\Python38\remark.exe %1"
  • 保持文件

D:\Python38\remark.exe 这个是remark.exe存放的具体位置根据自己的实际放置位置而定
文件保持一定要用ans编码
在这里插入图片描述

  • 其他错误
    如果创建失败就去注册表手动改一下
    win+R 打开运行
    输入regedit
    注册位置

计算机\HKEY_CLASSES_ROOT\Folder\shell*文件夹备注*\command

在这里插入图片描述
在这里插入图片描述

四. 打包或者下载

下载地址:

https://gitee.com/SuperMondot/personal-storage/repository/blazearchive/master.zip?

自己打包:
安装pyinstaller

pip install pyinstaller

打包成exe 需要在remark.py所在的位置 即下面代码保存的位置

pyinstaller -F remark.py

五. 源码

# coding:utf-8
import sys
import os
import time

系统文件路径信息 = sys.argv  # 获取外部参数的 列表 第一个是文件本事 后面的是外部参数 用空格隔开

系统编码 = sys.getfilesystemencoding()  # 获取系统编码,确保备注不会出现乱码


# 将代码中的字符转换为系统编码
def 系统转码(内容):
    return 内容.encode(系统编码).decode(系统编码)


# 将消息统一格式
def 信息转码(消息):
    print(系统转码(u" * " + 消息))


try:
    文件夹路径 = ''
    if len(系统文件路径信息) == 1:
        信息转码(f'操作失败    选中的不是一个文件夹或者不是正确的路径')
    else:
        # 因为参数是用空格隔开的所以要手动拼接
        for 参数路径 in 系统文件路径信息[1:]:
            文件夹路径 += 参数路径 + ' '
        文件夹路径 = 文件夹路径.rstrip()  # 排除后面的空格

    信息转码(f'系统文件路径信息:{文件夹路径}|++++++++++++')

    配置文件 = fr"{文件夹路径}{os.sep}desktop.ini"
    换行符 = '\n'
    文件夹备注 = input(' * 请输入文件夹备注信息(按回车键结束输入):')

    while not os.path.isdir(文件夹路径):
        信息转码(f'操作失败    选中的不是一个文件夹或者不是正确的路径: {文件夹路径}')

    # 判断配置文件是否存在
    if os.path.exists(配置文件):
        信息转码(f'该文件夹已经备注过   尝试修改备注  {文件夹路径}')
        os.system(fr'attrib -s -h "{配置文件}"')  # 开放文件权限  # A存档文件属性;S系统文件属性;H隐藏文件属性;

        # 先读取文件内容 并修改备注一栏 好像没办法通过w+模式读写 只能分两次了
        ini = []
        with open(配置文件, 'r', encoding='ANSI') as f:
            for 当前行 in f:
                if 当前行[:8] == 'InfoTip=':
                    ini.append(f"InfoTip={文件夹备注}\n")
                else:
                    ini.append(当前行)

        # 重新写入内容
        with open(配置文件, 'w+', encoding='ANSI') as f:
            for 写入行 in ini:
                f.write(写入行)

        os.system(fr'attrib +s +h "{配置文件}"')  # 锁定文件权限
        信息转码(f'操作成功    备注信息改为: {文件夹备注}')

    else:
        信息转码(f'该文件夹没有备注过   尝试创建备注  {文件夹路径}')

        with open(配置文件, 'w+', encoding='ANSI') as f:
            配置文本 = f'''[ViewState]{换行符}Mode={换行符}Vid={换行符}FolderType=Generic{换行符}[.ShellClassInfo]{换行符}InfoTip={文件夹备注}{换行符}'''
            f.write(配置文本)

        os.system(fr'attrib +s +h "{配置文件}"')  # 锁定文件权限
        信息转码(f'操作成功    备注信息设为: {文件夹备注}')

    os.system(fr'attrib +s "{文件夹路径}"')  # 刷新
except Exception as e:
    信息转码(f'操作失败    {e}')

print(系统转码(u" * 等待自动退出 或 按 ctrl + c 退出程序") + os.linesep)
time.sleep(3)
sys.exit(0)

六. 使用

  1. 只能给文件夹备注
  2. 备注成功后要等一会
  3. 实在不显示修改一下文件夹图标就行
    在这里插入图片描述

使用效果
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值