reces Ver.0.00r29a公開
reces Ver.0.00r29aを公開しました。
〇Ver.0.00r29a
- 一部書庫で二重ディレクトリ判定が正しく行われない不具合を修正。
- 同名の二重ディレクトリを防ぐ「/c3」オプションを追加。
- 「/q /q」のように同じオプションを続けると解析終了の「//」と同じ扱いになる不具合を修正。
");
reces Ver.0.00r29aを公開しました。
〇Ver.0.00r29a
コマンドプロンプト上で「再圧縮」「圧縮」「解凍」「内容一覧表示」「書庫検査」「書庫内ファイル削除」を行うreces Ver.0.00r28を公開しました。
〇Ver.0.00r28
7-zip32.dll/7-zip64.dllをVer.15.05.00.02 betaに更新しました。
また、統合アーカイバプロジェクトでunrar32.dll Ver.0.17が公開されたため、今バージョンよりunrar32.dll/unrar64j.dllを同梱していません。
誤った拡張子を持つ書庫の再圧縮に対応するため、既存ファイルがあれば圧縮前に予め削除する「/NF」オプションを実装しました。
例:
作成したい書庫: arc.zip[zip形式]
同名の書庫 : arc.zip[lzh形式]
>reces /mrzip /N /X*.db arc.zip
削除された書庫は復元することが出来ませんので、ふつうは「/N」をお使い下さいませ。
7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.05.00.02 betaを公開しました。
●開発履歴
○Ver.15.05.00.02 beta – 2015/06/29
・リスト表示で日本語が文字化けする不具合を修正。(Special Thanks!:kiyohiro様)
・ファイル名がUTF-8で格納されている場合でも末尾の’/’からディレクトリ判定を行うように。(Special Thanks!:kiyohiro様)
リスト表示(recesでは/mL)で日本語が文字化けする不具合を修正しました。
また、ファイル名がUTF-8で格納されている書庫についても、末尾の’/’の有無でディレクトリ判定を行う様にしました。
7-Zipではファイル名末尾の’/’有無->属性の順でディレクトリ判定が行われますが、
末尾’/’の確認がUTF-8に対応していないため、UTF-8で格納かつ属性が保存されていない書庫ではディレクトリがファイル扱いで作成され、正しく解凍出来ませんでした。
そこで、UTF-8に対応するよう、以下のように修正しました。
LPCSTR prev = #if defined(_WIN32) && !defined(UNDER_CE) CharPrevExA((WORD)codePage, name, &name[name.Len()], 0); /* 追加ここから */ if (*prev != '/') { prev = &name[name.Len()]; --prev; while ((*prev & 0xc0) == 0x80) --prev; } /* 追加ここまで */ #else (LPCSTR)(name) + (name.Len() - 1); #endif
7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.05.00.01 betaを公開しました。
●開発履歴
○Ver.15.05.00.01 beta – 2015/06/23
・7-Zip 15.05 betaをベースにビルド。
7-Zipは15.05 beta、7-zip32.dllはVer.9.22.00.01をベースにしています。
辛うじてビルド出来るように修正したのみで、何が起こるかわかりません。
不安な方は、オリジナルの7-zip32.dll/7-zip64.dllが公開されるまでお待ちくださいませ。
#「Scanning~」のメッセージを削除しています。
#7-Zipのプログレスバー表示も削除しています。
#recesでログに従来と同じくファイル名を表示するには「/P-bb1」とします。
reces Ver.0.00r28bを公開しました。
〇Ver.0.00r28b
Ver.0.00r26から、フィルタ適用の結果、空となるディレクトリは極力排除する方針となっています。
今回の不具合は、配下に処理対象となるディレクトリ・ファイルがあるにもかかわらず、排除してしまうために因るものでした。
例えば、以下の構成の書庫ファイルに対し、「/X*.pdf」とした場合について。
1
│ テスト.pdf
│
└─2
テスト.jpg
フィルタ適用は
1\
1\2\
1\2\テスト.jpg
1\テスト.pdf
の順に行われます。
まず、「1\テスト.pdf」が除外されます。
次に、空ディレクトリチェックが行われます。
しかし、ここに不具合があり、「1\2\テスト.jpg」が存在するにも関わらず、誤って「1\」に子ノードが無いと判断、
結果、除外リストは
1\
1\テスト.pdf
となり、処理対象が無い状態となってしまいました。
これは自分では気付けない不具合でした。
報告して下さったkiyohiro様に感謝致しますm(_ _)m