累计签到:11 天 连续签到:7 天
|
昨天在悬赏区看到一个贴,然后写了个小工具,大家可以用用看
有好的发起或者bug题目接待多多提出
编写语言:易语言
悬赏贴地点:文件夹的属性是“只读”,无法更改 - 吾爱破解 - 52pojie.cn
功能简单演示:
1.工具整体面貌
2.选择要修改的文件夹
3.选择要修改的权限选项,这里选了拒绝
4.修改后文件成功不能访问
5.这里修改属性失败,是准确的,因为刚才设置了决绝访问
所以现在拿这个文件没有办法,改不掉
6.这里给它移除了刚才的拒绝权限,成功
7.成功隐藏
经过测试,纵然目次在其它盘符,D、E等盘符,盘符由于操作系统限制为只读也可以正常修改
我的OS为Win11测试目前没有题目,不同操作系统题目接待大家发出进行修正。
源码如下:
[Visual Basic] 纯文本检察 复制代码.版本 2.支持库 shell.支持库 iext.步调集 窗口步调集_启动窗口.子步调 _修改目次权限_被单击.局部变量 执行状态, 逻辑型.如果真 (文件夹路径 = “”) 信息框 (“文件夹路径不可为空”, 0, , ) 写日志 (“文件夹路径不可为空”) 返回 ().如果真竣事执行状态 = 置文件属性 (文件夹路径, 选择项).如果真 (执行状态 = 真) 信息框 (“修改成功”, 0, , ) 写日志 (“修改成功”) ' 改完禁用目次权限修改,保证每次必须先修改用户权限 修改目次权限.禁止 = 真 只读单选框.禁止 = 真 隐藏单选框.禁止 = 真 普通单选框.禁止 = 真 系统单选框.禁止 = 真 ' 启用用户权限修改 修改用户权限.禁止 = 假 赋予用户完全控制权限单选框.禁止 = 假 继续父文件夹权限单选框.禁止 = 假 拒绝用户所有访问权限单选框.禁止 = 假 移除特定用户权限单选框.禁止 = 假 重新修改用户权限.可视 = 假 返回 ().如果真竣事信息框 (“修改失败”, 0, , )写日志 (“修改失败”).子步调 _只读单选框_被单击选择项 = 1.子步调 _隐藏单选框_被单击选择项 = 2.子步调 _系统单选框_被单击选择项 = 4.子步调 _普通单选框_被单击选择项 = 128.子步调 _退出软件_被单击竣事 ().子步调 _以管理员身份运行_被单击.局部变量 时间, 文本型ShellExecute (0, “runas”, 取运行目次 () + “\” + 取执行文件名 (), “”, “”, 1)写日志 (“以管理员身份启动”)竣事 ().子步调 _修改用户权限_被单击.局部变量 最终指令, 文本型.如果真 (文件夹路径 = “”) 信息框 (“文件夹路径不可为空”, 0, , ) 写日志 (“文件夹路径不可为空”) 返回 ().如果真竣事.如果真 (权限修改运行指令 = “”) 信息框 (“请先选择一个权限操作类型”, 0, , ) 写日志 (“未选择任何权限操作”) 返回 ().如果真竣事' 最终指令 = “icacls ” + #引号 + 文件夹路径 + #引号 + “ /inheritance:d ” + 权限修改运行指令 + “ /c”最终指令 = “icacls ” + #引号 + 文件夹路径 + #引号 + “ ” + 权限修改运行指令 + “ /c”写日志 (“即将执行: ” + 最终指令)运行 (最终指令, 真, 0).如果真 (取错误码 () = 0) 信息框 (“修改成功”, 0, , ) 写日志 (“修改成功”) 修改用户权限.禁止 = 真 修改目次权限.禁止 = 假 只读单选框.禁止 = 假 隐藏单选框.禁止 = 假 普通单选框.禁止 = 假 系统单选框.禁止 = 假 赋予用户完全控制权限单选框.禁止 = 真 继续父文件夹权限单选框.禁止 = 真 拒绝用户所有访问权限单选框.禁止 = 真 移除特定用户权限单选框.禁止 = 真 重新修改用户权限.可视 = 真 返回 ().如果真竣事信息框 (“修改失败”, 0, , )写日志 (“修改失败”).子步调 _赋予用户完全控制权限单选框_被单击权限修改运行指令 = “/grant:r Everyone:(OI)(CI)F /t”' 信息框 (权限修改运行指令, 0, , ).子步调 _继续父文件夹权限单选框_被单击权限修改运行指令 = “/inheritance:e”.子步调 _拒绝用户所有访问权限单选框_被单击权限修改运行指令 = “/deny Everyone:(OI)(CI)F /t”.子步调 _移除特定用户权限单选框_被单击权限修改运行指令 = “/remove Everyone /t”.子步调 _选择文件夹_被单击.局部变量 路径, 文本型路径 = 欣赏文件夹 (“请选择要解锁权限的文件夹”, ).如果真 (路径 ≠ “”) 要修改的文件路径.内容 = 路径 文件夹路径 = 路径 写日志 (“已选择文件夹: ” + 路径) 返回 ().如果真竣事信息框 (“选择文件夹路径不可为空”, 0, , )写日志 (“选择文件夹路径不可为空”).子步调 __启动窗口_创建完毕' 初始必须先修改权限,才能再修改属性,必要操作由OS限制决定修改目次权限.禁止 = 真只读单选框.禁止 = 真隐藏单选框.禁止 = 真普通单选框.禁止 = 真系统单选框.禁止 = 真重新修改用户权限.可视 = 假.子步调 _重新修改用户权限_被单击' 当点击重新修改用户权限后,更新修改属性单选和按钮为禁用只读单选框.禁止 = 真隐藏单选框.禁止 = 真普通单选框.禁止 = 真系统单选框.禁止 = 真修改目次权限.禁止 = 真' 当点击重新修改用户权限后,更新修改用户权限单选框和按钮为正常修改用户权限.禁止 = 假赋予用户完全控制权限单选框.禁止 = 假继续父文件夹权限单选框.禁止 = 假拒绝用户所有访问权限单选框.禁止 = 假移除特定用户权限单选框.禁止 = 假' 隐藏按钮本身重新修改用户权限.可视 = 假写日志 (“已重置权限修改状态”).子步调 写日志.参数 消息, 文本型.局部变量 索引, 整数型.局部变量 时间, 文本型时间 = 到文本 (取现行时间 ())索引 = 日志列表框.插入表项 (, , , , , )日志列表框.置标题 (索引, 0, 时间)日志列表框.置标题 (索引, 1, 消息)日志列表框.保证表现 (索引)
[Visual Basic] 纯文本检察 复制代码.版本 2.全局变量 选择项, 整数型.全局变量 权限修改运行指令, 文本型.全局变量 文件夹路径, 文本型
[Visual Basic] 纯文本检察 复制代码.版本 2.DLL命令 ShellExecute, 整数型, "shell32.dll", "ShellExecuteA", 公开 .参数 hwnd, 整数型 .参数 lpOperation, 文本型 .参数 lpFile, 文本型 .参数 lpParameters, 文本型 .参数 lpDirectory, 文本型 .参数 nShowCmd, 整数型
开发过程(AI润色总结版):
关键约束:Windows 系统中,要修改文件属性,必须先确保当前用户对该文件/文件夹拥有足够的 NTFS 权限。
因此工具的流程设计为:
- 必须先执行“修改用户权限”(调用 icacls)成功后,才能启用“修改目次权限”(调用 置文件属性)修改文件属性成功后,界面规复状态,允许再次修改 NTFS 权限(形成闭环)
典型踩坑与解决
icacls 总失败 → 硬编码参数与用户选择冲突,改为纯动态拼接。运行结果误判 → 运行(..., 假) 只表示进程启动,改用 真 等待并取错误码。
文件夹属性与权限修改工具.rar
(6.82 KB, 下载次数: 0)
|
精密测量技术论坛免责声明
重要声明:以上内容仅代表该作者观点,不代表本站精密测量技术论坛立场。
如有涉及侵权请尽快告知,我们将会在第一时间处理。作者原创内容未经允许不得转载!
站长联系邮箱:1339305021@qq.com
站长联系微信:dddnnbbb
|