カテゴリー別

お絵描き、デザイン

写真、動画関連ソフト

アメーバピグ専用ソフト

ホームページ関連

画像処理

スキャナー用

SEO 関連

お楽しみ

その他

過去ログ

2018年02月01日(木)

ミルノ PC フォトフレームの新機能を実装中。7z.dll で RAR、RAR5 を開けるように

写真閲覧ソフトのミルノ PC フォトフレーム を修正中。

今日は、 7z.dll で、RAR、RAR5 を開けるようにしました。

7-Zip 16.04 には書庫フォーマットごとに「ハンドラー」
と呼ばれるものが 53 種類用意されていて
書庫に対応したハンドラーを使用して展開します。

RAR と RAR5 は別のハンドラーになっているのですが
どちらも、ファイル名に同じ拡張子 rar を使うので、
拡張子ではどちらのハンドラーを使えばよいのか、判断できません。

で、どういうコードにしたかというと、
とりあえず、拡張子で、ハンドラーを検索します。

でハンドラーが見つからなかった場合は、
書庫ではないと判断します。

拡張子を偽装している場合開けませんが、
速いのでこのような実装を採用しています。

画像ビューアーとしては、拡張子を偽装しているファイルを開けること
より、フォルダーツリーが高速に動作することの方が重要だからです。

ハンドラーが 1 つ見つかった場合は、
そのハンドラーを使います。

複数見つかった場合は、ファイルの先頭から 2048 バイト
読み込んで、ヘッダー情報から、どちらの書庫がふさわしいか判断します。

ハンドラーごとに、IsArc という関数が用意されていて、
ファイルの中身から書庫かどうかを判定できるのですが、
何故か、RAR、RAR5 では未実装だったので自分で実装しました。

RAR 5.0 archive format によると、 Self-extracting module (SFX)
が無い場合、ファイル先頭のデーターで RAR か RAR5 か判定できます。
(RAR 5.0 signature のところを参照です)

・・・

RAR、RAR5 が開けるバージョンの公開はまだですが、

日本語の最新版はこちらのページから、ダウンロードできます
You can download the latest version of Miruno PC Photoframe here.

x64 の最新版はこちらのページから、ダウンロードできます
Download the latest version of Miruno PC Photoframe x64 here.

・・・

よくわかりませんが、7-Zip 16.04
だと開けないパスワード付き zip があったので、
zip は、libzip で開いた方がよさそうな感じです。

最近リリースされた 7-Zip 18.01 だとどうかわかりません。

ミルノ PC フォトフレーム
ミルノ PC フォトフレームのダウンロード
ミルノ PC フォトフレームの更新履歴
ご意見・ご要望連絡窓口


コメント
コメントする