7-ZIP32.DLL for Win32: Compress/Extract .7z and .zip files Top Page

Common Archivers Library - 統合アーカイバ・プロジェクト
--- Sorry, Home Page in English is under construction.
     

.7z と .zip ファイルの圧縮/展開(解凍)

7-ZIP32.DLL for windows 32bits

Igor Pavlov 氏が開発し、高圧縮率で一部の人に支持されている 7z 形式の書庫の圧縮・解凍及び、 他の zip 互換プログラムより少しだけ圧縮率の高い zip 書庫の圧縮・解凍をサポートするライブラリです。
・過去の履 歴 to top
 
  • 2010/8/30 Version 4.65.00.01 公開。

    • APIの追加。(SevenZipGetCreateTime/EX, SevenZipGetAccessTime/Ex)

    • 7-Zip 4.65 にてリビルド。

      • zip 書庫で Unicode(UTF-8) のファイル名をサポート。3 つのモードが有ります。
        1) デフォルト:ローカルコードページに無い文字を使用した場合 UTF-8 を使用。
        2) -mcu スイッチ:非 ASCII 文字を使用した場合 UTF-8 を使用。
        3) -mcl スイッチ:ローカルコードページを使用。

      • 書庫にファイル作成日時を記録する事が出来ます。 (-mtc スイッチ)

      • スイッチで on,off の代わりに +,- が使えます。 -mSW=on は -mSW+ と同等。

      • リスト及び解凍コマンドにて -t スイッチの使用を許可。

      • zip 書庫で LZMA 方式をサポート。

      • PKWARE-AES で暗号化された zip 書庫の解凍が出来ます。

      • 幾つかのバグを修正。

  • 2008/1/31 Version 4.57.00.01 公開。

    • SevenZipCheckArchive で _iMode オプションを一部サポート。これまで 0 を指定していた場合、より簡易なチェックになります。

    • d コマンド時 SetOwnerWindow 系 API でメッセージを投げるように対応。

    • 進捗状況ダイアログで処理ファイルの詳細を表示する機能を追加。

    • 内臓 SFX の Unicode 対応を強化。

    • SevenZipGetArchiveType で 7z 書庫のヘッダが暗号化されていた場合にパスワードを求めないように変更。
      ただし、不正な書庫では間違った答えを返す可能性があります。

    • SevenZipGetAttribute に於いて 7z 書庫も暗号化フラグを取得するように変更。

    • EXTRACTINGINFO 系構造体で圧縮時もファイル属性と更新日時が有効になるよう変更。

    • 暗号化書庫の操作でパスワードを間違えた際、再度確認せずエラーを返すよう変更。

    • SevenZipGetMethod 等で取得できる 8 文字に短縮された圧縮方式が短縮することで別の圧縮方式と同じになってしまうことが有るのを修正。

    • SevenZipFindFirst を呼ぶ前に SevenZipOpenArchive 系の一部のAPI を使用すると初期化されていないデータを返していたのを修正。

    • 空コマンド送信時に返すコマンドリストで対応していないものは除去修正。

    • アプリケーションによりデフォルトのパスワードのマスクが変更されていた場合にマスクの付け直しを行っても元のマスクに戻るように修正。

    • 内部最適化。

    • 7-Zip 4.57 にてリビルド。

      • Zip 形式の対応状況を改善。

      • .zip 書庫で WinZip 互換の AES-256 暗号化に対応。

      • 7z 形式の暗号化強度を改善。動的配列をランダムに初期化します。

      • 速度の最適化

      • デフォルトの辞書サイズを増加。Normal:16MB, Max:32MB。

      • .zip 書庫の圧縮でマルチスレッドモードに対応。

      • .7z 書庫の圧縮において順序リスト(拡張子のリスト)を使用します。

      • これにより圧縮率を僅かに上昇させることが出来ます。
      • 解凍時にファイル名の不正な文字を変換。

      • .7z 書庫の解凍時にフォルダの更新日時を復元。

      • 260 文字以上のファイルパス名に対応。

      • ”共有ファイル圧縮”オプションの -ssw スイッチを実装。

      • -ssc[-] スイッチの実装。ファイル名の大文字と小文字を区別します。

      • -mhcf=off スイッチはサポートされなくなりました。

      • -t{Type} スイッチを指定しない場合、書庫の拡張子から書庫の形式を決めます。

      • 幾つかのバグ修正。

  • 2007/9/5 Version 4.42.00.04 公開。

    • 長いファイル名のファイルを含む書庫を操作するとオーバーフローが発生するセキュリティーホールを修正。

    • SevenZipSetOwnerWindowEx() でコールバック関数が呼ばれないバグを修正。

    • IE4.0以上がインストールされてない環境でも動作する様に修正(多分)。

  • 2007/5/25 Version 4.42.00.03 公開。

    • Windows95で使用できなかった問題を修正。

    • 内蔵自己解凍書庫の小さいアイコンが崩れていたのを修正。

    • 経過ダイアログ(英語)のテキストの表示が途切れていたのを修正。

    • SFX 設定ダイアログのタブオーダーとニーモックを修正。

  • 2007/2/3 Version 4.42.00.02 公開。

    • -- スイッチ使用時、コマンドが正常に働かない場合があったバグを修正。Ver4.42.00.01 での -scs スイッチに対応する際のエンバグ。

  • 2006/11/30 Version 4.42.00.01 公開。

    • 内蔵 SFX 用の設定項目を追加。

    • SevenZipSetUnicodeMode は SevenZip 実行中では失敗する様に修正。

    • -sfx スイッチを使用すると必ず SFX の設定を問い合わせていたのを修正。

    • Unicode 名のファイルを開けないバグを修正。

    • Unicode モードの設定次第では ANSI のまま出力してしまうバグを修正。

    • 7-Zip 4.42 にてリビルド。

      • 圧縮速度とメモリ要求量を増強。
          デフォルトの辞書サイズは以下に増えました。
          Fastest: 64 KB, Fast: 1 MB, Normal: 4 MB, Max: 16 MB, Ultra: 64 MB

      • マルチプロセッサ用のマルチスレッドモードをデフォルトにしました。

      • 7z/LZMA のマッチファインダーは以下のみが使用できます。
          HC4, BT2, BT3, BT4

      • -x スイッチで指定した相対パスは、絶対パスで指定したファイルに影響を及ぼします。

      • 新しいスイッチを追加。 : -slt
          "l"(リスト)コマンドと使用する事で書庫の技術情報を表示します。

      • 新しいスイッチを追加。 : -scs{WIN|DOS|UTF-8}
          リストファイルで使用されている文字コードを指定します。   デフォルトは WIN ですが Unicode モードの時は UTF-8 になります。
          # Unicode モード : SevenZipSetUnicodeMode で TRUE を指定した時。

      • 幾つかのバグ修正。

  • 2006/3/6 Version 4.31.00.03 公開。

    • ある条件でメモリ破壊を起こすバグを修正。
      Ver4.31.00.02 のセキュリティーホール修正漏れ。

  • 2006/2/28 Version 4.31.00.02 公開。

    • Ver4.23.00.01以降のバージョンでバッファオーバーフローが発生するセキュリティーホールを修正。
      ダイアログに表示されるファイル名を短縮する際にファイル名がMAX_PATH 以上の長さの時に発生。

    • 格納ファイル名が設定されていないファイルを含む書庫を開く際に例外を発生してしまうバグを修正。

  • 2005/12/6 Version 4.31.00.01 公開。

    • tar 系の書庫が開けてしまうバグを修正。Ver4.23.00.01 でのエンバク。

    • SevenZipCheckArchive、SevenZipGetArchiveType にて存在しないファイルを指定すると例外を発生するバグを修正。

    • 7-Zip 4.31 にてリビルド。

      • ショートファイル名をサポート(例 FILENA~1.TXT)

      • コマンドラインでワイルドカードも -r スイッチも指定されていない場合圧縮する前に指定されたファイルがディスク上に存在するか確認します。

      • マルチボリューム CAB 書庫の解凍をサポート。

      • 重複するファイル名が衝突する問題は名前を括り繋げて修正しました。

      • LZMA maximum/ultra 圧縮のスピードを最適化。

      • 現在 LZMA は文字サイズを最大 273 まで増やしサポートします。

      • LZMA にて圧縮するファイルが指定された辞書サイズより小さい場合は辞書サイズを減少させます。

      • -slp スイッチで大きなメモリページを使用することが出来ます。
        この設定で圧縮速度が速くなります。 しかし、圧縮開始時に大きなページを割り当てる為、一時停止する場合が有ります。 また、大きなページを使ってるときはタスクマネージャーが正確なメモリ使用量を表示しません。 この設定は Windows 2003 / XP x64 / Vista でのみ使用できます。 それから、管理者権限をもっている必要があります。 お勧めの RAM サイズ:1GB 以上。

      • 幾つかのバグを修正。

  • 2005/9/19 Version 4.23.00.02 公開。
    • SevenZipSetOwnerWindowEx64, SevenZipKillOwnerWindowEx64 を実装。

    • SetOwnerWindow 系 API の仕様を一部変更。

      • SevenZipSetOwnerWindow, SevenZipSetOwnerWindowEx を設定する際にこれまでは片方が設定されている時にもう片方を設定しようとするとエラーになっていたがそれぞれ設定できるように変更。

      • ウィンドウの解除も SevenZipClearOwnerWindow で両方解除出来たが対になる API でのみ解除できるように変更。

      • SetOwnerWindow、SetOwnerWindowEx, SetOwnerWindowEx64 が同時に設定されていた場合は SetOwnerWindowEx64, SetOwnerWindowEx, SetOwnerWindow の優先順でメッセージを一回だけ送信します。

      • ARCHIVERPROC の定義を LPEXTRACTINGINFOEX から LPVOID に変更。

      • EXTRACTINGINFO 構造体の szDestFileName には処理ファイルのフルパスを格納するように変更。(解凍時のみ)

      • EXTRACTINGINFOEX 構造体の dwCompressedSize は圧縮後のサイズが格納されるがオーバーフローする場合は -1 を格納するように修正。

    • OpenArchive 系 API の仕様を一部変更。

      • GetCompressedSize, GetOriginalSize, GetArcCompressedSize, GetArcOriginalSize, GetArcFileSize に於いて値がオーバーフローする場合は -1 を返すように変更。

      • INDIVIDUALINFO 構造体の dwOriginalSize, dwCompressedSize に於いて値がオーバーフローする際は -1 を格納するように修正。

    • 圧縮時 -hide スイッチを使用した際に場合によっては落ちるバグを修正。

    • -p スイッチでパスワードを指定した場合はパスワードエラーが出ても再度問い合わせないように修正。

    • ソリッド書庫判定が出来ない場合があり OpenArchive 系の API で問題が起きていたバグを修正。

  • 2005/9/16 Version 4.23.00.01 公開。
    • 経過ダイアログ、上書き確認ダイアログでファイル名が途中で切れない様長すぎる場合は短縮して表示するように変更。
    • 部分解凍時、処理ファイル名が違ったファイル名を表示してたバグを修正。
    • 7-Zip コアの大きな変更に対応する為、DLL 部のコードを大きく修正。
    • 7-Zip 4.23 にてリビルド。
      • ファイルが他のソフトによりロックされている場合は中断しないで警告を出力し、そのファイルの処理をスキップするように変更。

      • コマンドラインのインターフェイスを変更。

      • 絶対パスを使えるようにしました。

      • 構文を単純化。
           前:7z a a Folder1\* Folder2\* -r
           今:7z a a Folder1 Folder2

      • *\*111*\* のような複雑なワイルドカードが使用可能。

      • 不正な拡張子の書庫の形式をより速く判断出来るようになりました。

      • "-r" スイッチを含むコマンドラインで幾つかのコマンドが不正に働いていた為、圧縮中に幾つかのファイルがスキップされていました。

      • zip 形式で Zip64 拡張をサポート。これにより zip 形式で 4GB 以上の書庫を作成する事が出来るようになりました。

      • "--" スイッチ以降のスイッチをスイッチとして扱わないようにします。

      • マルチボリューム書庫の作成に対応。(-v スイッチ)

      • zip 形式で Shrink 方式の解凍が出来るようになりました。

      • 圧縮中に開けないファイルがあった場合は中断しないでそのファイルをスキップし警告を出力するようにしました。

      • 7z 形式の LZMA方式 にて速度の最適化。(5%)

      • 全てのコマンドにおいて "-r-" スイッチが標準設定になりました。

      • コードサイズの最適化。

      • BZip2 コードの書き直し。Normal, Maximum, Ultra モードをサポート。
        Normal モードはオリジナルの BZip2 圧縮とほとんど同じです。
        幾つかのファイルでは Maximum と Ultra モードだと 1 〜 3% 圧縮率が優れていますが、Normal モードより Maximum モードでは 3 倍ほど遅くUltra モードだと 8 倍ほど遅いです。

      • 内部を作り直し。

      • 幾つかのバグ修正。

  • 2004/9/30 Version 3.13.00.04 公開。
    • 内蔵 SFX ファイルでの自己解凍書庫が出来なくなってたバグを修正。

  • 2004/9/27 Version 3.13.00.03 公開。
    • Windows9x 系で使用出来ないバグを修正。Ver3.13.00.02 でのエンバグ。

    • Windows9x 系で経過ダイアログに経過数値が表示されてないバグを修正。

    • 暗号化 zip 書庫解凍時でパスワードをキャンセルした際にゴミファイルが残らないように修正。

    • ダイアログでキャンセルと半角で表示されていた所を全角に修正。

    • パスワード入力ダイアログのタイトルが常に同じだったバグを修正。

    • パスワードキャンセル時に ERROR_PASSWORD_FILE を返すように修正。

    • Ver3.13.00.02 でパスワードエラー時に ERROR_PASSWORD_FILE を返すよう修正していたつもりが ERROR_DURING_DECOMPRESSION が返ってたのを修正。

  • 2004/9/18 Version 3.13.00.02 公開。
    • SevenZipSetUnicode API を追加。  使用する文字コードを UTF-8 にする事で完全に UNICODE に対応可能。

    • 内蔵自己解凍書庫でPPMdを扱えるように変更。

    • 解凍するファイルのサイズの合計が 0 の場合、エラーを起こすバグを修正。

    • zip 形式の書庫で SevenZipGetWriteTimeEx が使えなかったのを修正。

    • 暗号化 zip 書庫解凍時にパスワードが間違ってるとゴミファイルが作成されるの削除するように修正。

    • 暗号化 zip 書庫解凍時でパスワードが間違ってる場合は3回まで繰り返しパスワード入力画面を表示するように修正。

    • 暗号化 zip 書庫解凍時パスワードエラーの場合は ERROR_PASSWORD_FILE を返すように修正。

    • SevenZipFindFirst で _szWildName に -sfx -hide 等、オプションで使用されている文字列が指定出来ないバグを修正。

    • 内部コードで ATL を使用しないように変更。

    • 通常のビルドでも内部では完全に UNICODE で処理している為コンパイルオプションから UNICODE 版の作成を削除しました。

    • 7-zipCMD.txt のコマンドラインの様式の項目に説明を追加。

  • 2004/2/23 Version 3.13.00.01 公開。
    • SFXモジュールを内蔵し自己解凍書庫を作成できる機能を追加。
       -sfx オプションを引数なしで使用すれば作成可能。

    • base_dir が存在しない場合はエラーになるように変更。

    • SevenZipFindFirst で _szWildName が上手く機能しなくなったバグを修正。
       Ver3.11.00.01 の Unicode 対応でのエンバグ。

    • 海外版 Windows で使用されている特殊文字(umlaut)がDLL使用後にそのアプリケーション内で使用すると他の文字に化けるバグを修正。

    • 7-Zip 3.13 にてリビルド。(DLL部に関しては3.12と同等)
    • - 幾つかのバグを修正。

  • 2003/10/9 Version 3.11.00.01 公開。
    • Unicode 対応の為の内部変更。

    • 7-Zip 3.11 にてリビルド。

      • 無作為のファイルの解凍速度を上げる為に、ソリッドブロックサイズに以下の制限を使用します。
          - 無圧縮 : 0 B
          - 高速圧縮: 16 MB
          - 標準圧縮: 256 MB
          - 最高圧縮: 1 GB
          - 超高圧縮: 4 GB

      • WindowsNT/2000/XP/2003 において Unicode ファイル名をサポート。

      • 幾つかのバグを修正。

  • 2003/9/27 Version 3.10.00.01 公開。
    • 7-Zip 3.10 にてリビルド。

      • 解凍時に既存のファイルを自動的に改名するオプション。(-aot スイッチ)

      • 幾つかのバグ修正。

  • 2003/9/27 Version 3.09.02.02 公開。
    • 環境によって使用するソフトを終了させてしまうバグを修正。
      Ver3.09.01.01 のバグ修正によるエンバグ。

  • 2003/9/21 Version 3.09.02.01 公開。
    • 7-Zip 3.09.02 にてリビルド。

      • 無作為のファイルを解凍する時のスピードを速める為のソリッドブロックサイズを制限するオプション。(-ms スイッチ)
         ※ LZMA 方式の圧縮で lc, lp, pb スイッチがサポートされ(て)た模様。

  • 2003/9/11 Version 3.09.01.01 公開。
    • 7-Zip 3.09.01 Beta にてリビルド。

      • 実行可能ファイルの自動圧縮フィルタ:dll, exe, ocx, sfx, sys, (-mf switch)

      • 7z の圧縮レベル:
          Fast: 32 KB 辞書, BCJ フィルタ
          Normal: 2 MB 辞書, BCJ フィルタ
          Maximum: 8 MB 辞書, BCJ フィルタ, 最大設定
          Ultra: 32 MB 辞書, BCJ2 フィルタ, 最大設定

      • ソリッドブロックの再圧縮を必要としない場合に、ソリッド 7z 書庫の更新をサポート。
        7z 書庫の -mhcf スイッチはデフォルトになります。

      • 幾つかのバグ修正。
         ※ 本家の7-Zipにて予期しないディレクトリにファイルを解凍してしまうセキュリティーホールの修正が行われています。
           これにより指定した解凍先が基底フォルダとなります。

  • 2003/8/25 Version 3.08.04.01 公開。
    • プロジェクトを最初から作り直し、内部変更多数。

    • SetOwnerWindow 系のAPIを実装。

    • 経過ダイアログの見た目を変更。

    • ソースからUNICODE版をコンパイル可能に。(動作については無保証無検証)

    • SevenZipOpenArchive でパスワードを求めらた場合に表示するダイアログを呼び出したプロセスが作成したウィンドウを親にして表示するように修正。

    • 7-Zip 3.08.04 Beta にてリビルド。

      • 内部的に再建、使用するレジストリを削減。

      • 幾つかのバグを修正。

      • ※ -mx オプションの指定方法が変更。(デフォルトの圧縮レベルが変更)

  • 2003/4/30 Version 2.30.31.01 公開。
    • 7-Zip 2.30 Beta 31 にてリビルド。

      •  幾つかのバグを修正。

  • 2003/4/20 Version 2.30.30.01 公開。
    • 7-Zip 2.30 Beta 30 にてリビルド。

      • zip書庫でBZip方式の圧縮解凍をサポート。(※ m={MethodID} オプションでDeflate64方式等の圧縮も可能に。

      • 幾つかのバグを修正。

      • 幾つかの最適化リコンパイルによりコードのサイズを縮小。

  • 2003/4/10 Version 2.30.29.01 公開。
    • 7-Zip 2.30 Beta 29 にてリビルド。

      • 幾つかのバグを修正。

      • LZMAコードを少し変更。

  • 2003/2/16 Version 2.30.28.01 公開。
    • 7-Zip 2.30 Beta 28 にてリビルド。

      • 4GB以上の7z書庫のUpdateする事ができるように修正。

      • 7z形式で非アイテムを扱えるように修正。

      • zip形式で空の暗号化されたファイルを圧縮できるように修正。

      • 7z形式のmaxモード(-mx)にて、辞書サイズを4MBの代わりに8MBを使います。

  • 2003/1/25 Version 2.30.27.01 公開。
    • パスワード入力時のキャプションが間違ってたのを修正。

    • -mheオプションを使用し圧縮された書庫が解凍できなかったバグを修正。

    • 7-Zip 2.30 Beta 27 にてリビルド。

      • 非常に大きなファイルを7z形式で圧縮する際の幾つかのバグを修正。

      • 幾つかのバグを修正。

  • 2003/1/14 Version 2.30.26.01 公開。
    • 7-Zip 2.30 Beta 26 にてリビルド。

      • zip書庫でDeflate64方式の解凍をサポート。

      • 幾つかのバグを修正。

  • 2003/1/5 Version 2.30.25.01 公開。
    • 書庫操作後スレッドハンドルの開放をしていなかったバグを修正。

    • 7-Zip 2.30 Beta 25 にてリビルド。

      • 7z書庫の暗号化機能(AES-256)をサポート。

      • 新しい書庫ヘッダ圧縮モードオプション(-mhcf)を追加。

      • 書庫ヘッダ圧縮は常にLZMA方法で圧縮されます。

      • -ms=off 無しでも非ソリッド書庫のアップデートが可能です。

      • 幾つかのバグを修正。

  • 2002/11/8 Version 2.30.24.02 公開。
    • 書庫に空のファイル若しくはディレクトリが含まれる場合、常にソリッド書庫として判定されるバグを修正。

  • 2002/11/5 Version 2.30.24.01 公開。
    • 日本語環境下以外では英語で表示するように変更したつもり。

    • OpenArchive 系のAPIの実装方法を直接7-Zipから取得するように変更。
      それにより以下のAPIの仕様変更。
      • SevenZipGetCRC 等でのCRC取得をサポート。

      • SevenZipGetMethod 等での圧縮方式取得をサポート。

      • SevenZipGetAttribute 等への出力形式をUnzip32.dll準拠に。

      • SevenZipGetCompressedSize 等でソリッド書庫の場合は常に 0 を返すように変更。

      • SevenZipGetArcCompressedSize/Ex でソリッド書庫の場合は -1 を返すように変更。

      • SevenZipFindFirst/Next で空のディレクトリの取得をサポート。


    • 上書き確認ダイアログでファイルの詳細を表示するように変更。

    • 中止処理を7-Zipに任せるように変更。それにより若干の高速化と安定化。

    • SevenZipGetWriteTimeEx でローカル時間を返していたのを修正。

    • エラーコードをもう少しきちっと返すように修正。

    • 複数の書庫を同時に開くと前の書庫のハンドルが無効になるバグを修正。

    • -hideオプションを使用ていない時はメッセージを送らないように修正。

    • ファイル属性の #define 識別子を定義してなかったのを修正。

    • 7-Zip 2.30 Beta 23 にてリビルド。
       幾つか内部を改造。
       -mスイッチの構文を少し変更。
       幾つかのバグを修正。

    • -oスイッチで指定した出力先フォルダが無い場合はエラーになる仕様は 7-Zip 2.30 Beta 22(Ver2.30.22.01)で作成されるように変更された模様。

    • SevenZipGetMethod で取得できる圧縮方式は、バッファを多く確保する事でより詳しい情報が取得できます。

    • 書庫がソリッド書庫かどうかを判定する場合は SevenZipGetArcCompressedSizeEx を使うべきです。

  • 2002/9/10 Version 2.30.23.01 公開。
    • 暗号化対応の為にパスワード処理辺りの変更。
    • 7-Zip 2.30 Beta 23 にてリビルド。
    • ZIP書庫の暗号化に対応。
    • 幾つかのバグを修正。
  • 2002/9/1 Version 2.30.22.01 公開。
    • 7-Zip 2.30 Beta 22 にてリビルド。
    • 現バージョンでは圧縮するファイルに絶対パスを使用出来ないように変更。
    • 幾つかのバグ修正。
  • 2002/7/9 Version 2.30.21.01 公開。
    • 暗号化zip書庫でディレクトリを含む際、一覧が取得出来ないバグを修正。
    • 7-Zip 2.30 Beta 21 にてリビルド。
    • LZMA(7z)圧縮に必要なRAMを軽減。
  • 2002/7/2 一般公開(とともに、ここへ転載)。
    • 7-Zip 2.30 Beta 20 にてリビルド。
    • LZMA(7z)解凍時に必要なRAMを軽減。
    • 幾つかのバグを修正。
  • 2002/6/19 β8
  • ....(中略)
  • 2002/5/18 β1(非公式公開)
 

to top
ソフト内容に関わる事や転載依頼等は同梱ドキュメントを参照の上、作者の指定方法でお願いします。

^ 統合アーカイバ・プロジェクトのホームページ
このページに付いてのお問い合せは: webmasterあっとまーくmail.csdinc.co.jp
(Feb. 8,2017 更新)