WinRARと連携して処理しやすくなるようにする。
自分用Jscriptのまとめ。
まとめスクリプト
WinRARで開く
タイプ:選択項目
オプション:
"D:\Program Files\WinRAR\WinRAR.exe"
フォルダ名で圧縮
タイプ:Jscript
オプション:
var FV = GetFolderView(Ctrl, pt); var Selected = FV.SelectedItems(); fs = new ActiveXObject("Scripting.FileSystemObject"); sh = new ActiveXObject("Shell.Application"); if (Selected) { for (var i = 0; i < Selected.Count; i++) { ErrCode = wsh.Run("WinRAR.exe a -r -ep1 -ed -inul -ibck \"" + Selected.Item(i).Path +"\".zip \"" + Selected.Item(i).Path +"/\"*",1,true); if(ErrCode == 0){ // シェル名前空間でゴミ箱を指定してMoveHereする sh.NameSpace(10).MoveHere(Selected.Item(i).Path); // 削除完了まで待つ(MoveHereは非同期なので) while( fs.FileExists( Selected.Item(i).Path ) ){ WScript.Sleep(100); } } } }
選択中の複数のフォルダをフォルダ名で圧縮して、圧縮後削除する。WinRarの機能をそのまま使用すると、圧縮フォルダ内の一番上にフォルダができてしまうのを避けるため。
コメント