21 10月

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.09.00.01 beta公開

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.09.00.01 betaを公開しました。

○Ver.15.09.00.01 beta – 2015/10/21
・7-Zip 15.09 betaをベースにビルド。
・SevenZipSetCP(),SevenZipGetCP()を追加し、SevenZipSetUnicodeMode()でのコードページ指定を廃止。
・7z.dll対応版「7-zip32.dll」「7-zip64.dll」について、SevenZipExists7zdll()を追加し、通常版と7z.dll対応版の判別、及び7z.dllの存在を確認出来るように。

SevenZipSetUnicodeMode()で行っていたコードページの指定は廃止し、かわりにSevenZipSetCP()での指定となりました。
また、7z.dll対応版のみSevenZipExists7zdll()を追加しました。

15 10月

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.08.00.02 beta公開

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.08.00.02 betaを公開しました。

○Ver.15.08.00.02 beta – 2015/10/15
・余計なSFXモジュールを誤って内蔵していたのを修正。
・7z.dll対応版「7-zip32.dll」「7-zip64.dll」追加。
・32bit版ライブラリについてはコンパイラをMicrosoft Visual C++ 2010に変更。

オリジナルの「7-zip32.dll」は「7za.exe」をベースとしているため、対応書庫は7zやZip等々に限定されています。
7-zip32.dllでCabやRar、Nsisなんかも解凍出来たらなぁ…

とそんな訳で「7z.exe」ベースの「7-zip32.dll」を作ってみました。(と言っても特にコードの変更はしていません^q^)
もちろん「7z.dll」依存ですので、公式インストーラでインストールを忘れずに!
#インストーラを使用しない場合は7-zip32.dllと同じ階層に7z.dllと愉快な仲間たちを配置してください。

これで本家7-Zipで対応している形式すべてを扱える…はずです。(以下公式日本語サイトより引用)

  • 圧縮/解凍(展開): 7z, XZ, BZIP2, GZIP, TAR, ZIP, WIM
  • 解凍(展開)のみ: AR, ARJ, CAB, CHM, CPIO, CramFS, DMG, EXT, FAT, GPT, HFS, IHEX, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, QCOW2, RAR, RPM, SquashFS, UDF, UEFI, VDI, VHD, VMDK, WIM, XAR, Z

以下は7z.dll対応版7-zip32.dllでRar書庫を閲覧中の図

ただし、7-zip32.dllを使用するソフトウェアが拡張子でライブラリを判定している場合、
オリジナルと同じく7zやzipしか処理できませんのでご注意くださいませ。

24 9月

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.07.00.01 beta公開

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.07.00.01 betaを公開しました。

○Ver.15.07.00.01 beta – 2015/09/24
・7-Zip 15.07 betaをベースにビルド。
・自己解凍部モジュールをマルチスレッド(/MT)でビルドするように。
・作成した自己解凍書庫でプログレスバーが表示されない不具合を修正。
・「-mcp」で指定されなければ文字コードの変換を行わないように。

MLangによる_autodetect_all指定の文字コード変換を毎度行うと動作が遅くなるため、「-mcp=」で指定された場合のみ変換するようにしました。

自己解凍書庫の解凍時に使用するダイアログの指定が誤っていたため、プロセスが残ったままになってしまう不具合を修正しました。
また、自己解凍用のモジュールを/MTでビルドしてみました。

18 8月

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.06.00.02 beta公開

7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.06.00.02 betaを公開しました。

●開発履歴
○Ver.15.06.00.02 beta – 2015/08/18
・SevenZipExtractMem()実装。
・コードページ指定をInfo-ZIP Unicode Path Extra Fieldより優先するように。

Ashleyで7z書庫のサムネイル表示に対応するため、SevenZipExtractMem()を実装しました。

統合アーカイバライブラリでExtractMem()のソースコードを公開しているライブラリがなく、俺俺実装に。
dup2()はkSameTerminalError対策です。
CreatePipe()って正しいサイズ指定すべきかINFINITEで良いのかよく分からないなぁ…レベルでコードを書いています。

動作があやしいので、人柱な方々以外は本家の更新を待ちましょう。

コードページ指定についても、ちょいとまずい処理が…

広告