akiya
| アプリ | カテゴリ | 最新版 | 公開日 |
|---|---|---|---|
| 圧縮・解凍 | 1.08 | 2026-10-25 |
リリース履歴
UNLHA32.DLL 互換の高精度タイムスタンプ取得API(UnlhaGetWriteTime・CreateTime・AccessTime系)と UnlhaGetCompressedSize/Ex が実装され、優先度 II までの API が揃った。Level 2 ヘッダ読込では FILETIME 拡張ヘッダ (0x41) があればそれを優先して使うように変更された。また UnlhaGetVersion() の返すバージョン情報を偽装できるようになり、UNLHA32.DLL の代替として使う際の互換性が向上した。
展開(e, x)と更新(u)の既定動作が UNLHA32.DLL 互換の -u1 相当に変わり、古いファイルや同一日時のファイルはスキップして正常終了するようになった。-u0〜-u3 スイッチに対応し、Windows FILETIME 拡張ヘッダ (0x41) でタイムスタンプを正確に保持、コードページ拡張ヘッダ (0x46、CP932 固定) にも対応した。ファイルヘッダの OS 種別は 'M' (MS-DOS) になった。
DLLで使用していたランタイムライブラリを動的リンクから静的リンクに変更した。
UNLHA32.DLL との互換性向上のため、バッファ出力の改行コードを CRLF に統一し、文字コードはデフォルトで Shift-JIS に設定した。あわせて新規オプション -ju/-ju1/--utf8 を追加し、UTF-8 での出力にも対応した。
一部のUNLHA32.DLLを使用したソフトで、圧縮・展開以外のコマンドの時に指定する必要のない基準ディレクトリが指定されているものがあったので、互換性を高めるためにそのような記述を容認して記述を無視するようにしました。
互換性検証用に32ビット版もビルドできるようにしました。 UnlhaCheckArchive()で自己解凍ファイルなども正しく判定できるように修正。 UnlhaGetLastError() / UnlhaGetFileName / UnlhaGetOriginalSize / UnlhaGetDate / …
UnlhaSetOwnerWindowEx()、UnlhaSetOwnerWindowExTotal() で指定したコールバックの返り値の扱いが間違っていたのを修正。
不足していた詳細なスイッチを実装 (一部未対応/無視しているものもあります)。 この変更により、一部デフォルトの動作が変わっている場合があるのでご注意ください。