【QTTabBar】批量去除当前文件夹的所有文件只读属性

 

使用方法参考:

https://www.cnblogs.com/issacnew/p/18392262

 

复制代码
// 作者:博客园-issacnew
// 网站:https://www.cnblogs.com/issacnew/p/18392262
// 作用:qttabbar去除当前文件夹下的所有文件只读属性,使得所有文件可读

var qs = new ActiveXObject("QTTabBarLib.Scripting");
var wnd = qs.activewindow;
var activeTab = wnd.ActiveTab;
var currentPath = activeTab.Path;
var fso = new ActiveXObject("Scripting.FileSystemObject");

function removeReadOnlyAttribute(folderPath) {
    var folder = fso.GetFolder(folderPath);
    var files = new Enumerator(folder.Files);

    // 遍历当前文件夹中的文件并去除只读属性
    for (; !files.atEnd(); files.moveNext()) {
        var file = files.item();
        try {
            var fileAttributes = file.Attributes;
            // 去除只读属性 (0x1 是只读属性)
            if (fileAttributes & 0x1) {
                file.Attributes = fileAttributes & ~0x1;
                //qs.alert("已去除只读属性: " + file.Name);
            }
        } catch (e) {
            qs.alert("错误: " + e.message);
        }
    }

    // 递归处理子文件夹
    var subFolders = new Enumerator(folder.Subfolders);
    for (; !subFolders.atEnd(); subFolders.moveNext()) {
        var subFolder = subFolders.item();
        removeReadOnlyAttribute(subFolder.Path); // 递归调用
    }
}

// 调用函数处理当前文件夹及其子文件夹
removeReadOnlyAttribute(currentPath);
qs.alert("当前文件夹及其子文件夹的所有文件已去除只读属性!");
复制代码

 

 

效果如下:

 

posted @   IssacNew  阅读(17)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示