采用插件机制的批量文件扫描及进程处理工具
由于平常工作中需要大批量处理文件,所以用蹩脚的JavaScript语言编写了这个脚本,基本实现了文件及进程的枚举扫描,然后可以通过额外插件实现处理相应的文件或者进程,插件放在plugins文件夹里。
我这里写了3个插件,分别是批量打印Word文档、枚举系统活动进程、枚举RMVB、RM、AVI、WMV、MKV格式的电影文件。
[点击这里下载]
function Component(ActiveXObject) {
// 创建对象建议使用ActiveXObject.open(名称);
// 比如ActiveXObject.open("Word.Application");
this.name = "插件名称"; // 将显示在主界面下拉框中
this.cancel = false; // 是否取消扫描,运行中设为true会自动中止扫描
this.success = true; // 是否处理成功
this.log = new Log(); // 日志对象
// 日志分为3种,将会在列表框反应出来
// this.log.error("出错消息文本");
// this.log.info("正常消息文本");
// this.log.warning("警告消息文本");
this.load = function() {
// 加载插件时所要运行的代码
}
this.unload = function() {
// 卸载插件时所要运行的代码
}
this.dispatch = function(parentObj, selfObj, msg){
switch(msg) {
case "file": // 文件处理分支
// parentObj.self (注意这里的.self)
//就是Scripting.FileSystemObject对象
// selfObj为每个File对象
break;
case "process": // 进程处理分支
// parentObj 就是winmgmts的GetObject对象
// selfObj为Win32_Process 每个进程对象
break;
}
return false;
}
}
目前已知的问题
1. 某些系统上双击启动会报错,请关闭IE浏览器并清除进程中多余的iexplore.exe进程后再试,如果错误依旧,请再次手动打开IE浏览器,然后再试。如果问题还是存在,建议关闭其他浏览器。(感谢
威言威语
提供)
2. 外文计算机上执行可能会出错,建议将脚本内中文改成英文后再运行。(感谢解皞在日文系统下的测试)
如果有什么问题或者建议欢迎提出!