================================================================================
                     .7z 書庫 統合アーカイバ仕様圧縮解凍 DLL

                         7-ZIP32.DLL Version 9.22.00.01

================================================================================
                                                            秋田 稔 (2014/06/25)

０．はじめに

  このたびは「7-zip32.dll」をダウンロードして頂きありがとうございます。
  これは Igor Pavlov 氏が開発し、高圧縮率で一部の人に支持されている
  7z 形式の書庫の圧縮解凍及び、他の zip 互換プログラムより少しだけ
  圧縮率の高い zip 書庫を作成することが可能です。
  zip 書庫は Store, Deflate, Deflate64, Bzip2, LZMA, PPMd 方式の圧縮／解凍と 
  Shrink, Implode 方式の解凍が可能で、さらに Zip64 拡張にも対応しています。
  Igor Pavlov 氏が作成された 7-Zip は以下のサイトより入手可能です。
  http://www.7-zip.org/

  また、現在 NIFTY-Serve FWINDC MES #3 にて進行中の『統合アーカイバ
  ＡＰＩ仕様』（仮称）に準拠しています。
  なお、「ＡＰＩ仕様」は現在進行形のプロジェクトです。
  したがって、この 7-zip32.DLL に含まれる機能も、
  最終決定版ではないと言うことを充分に認識の上ご使用ください。

  それから貴方のソフトでこの DLL に対応する場合、
  出来るだけダイナミックリンク (LoadLibrary/GetProcAddress)
  で使用するようにして、7-zip32.dll が無い環境でも、
  (7z 関係が使えないだけで) 問題なく動作するような設計にしてください。

１．ファイルについて

  配布ファイルを展開すると以下のファイルが得られます。

    7-zip32.txt  : このドキュメント。
    7-zip32.dll  : ライブラリ本体。
    7-zipCMD.txt : 7-zip32.dll でのコマンド等についての説明ファイル。
    7-zipAPI.txt : 7-zip32.dll で使用できるAPIの説明書です。
    7-zip32.h    : 7-zip32.dll を使用するためのヘッダファイル。
    7-zip32.lib  : 7-zip32.dll を静的リンクするためのライブラリ。
                   なおこれはVC++用ですので、BC++等では使用出来ません。
                   また上記にも書いたように、出来ればこれは使わずに
                   ダイナミックにリンクする方法をお取りください。
    copying.txt  : GNU 劣等一般公衆利用許諾契約書 (LGPL)
    src.7z       : 7-zip32.dll のソースファイルです。

２．使い方

  これはライブラリのみですので、単独では使用できません。

    A. プログラムから
      API については，7-zipAPI.txt をご覧ください。
      7-zip32.dll を使用するには 7-zip32.h をインクルードし
      リンク時に 7-zip32.lib をリンクするか、
      LoadLibrary()/GetProcAddress() によりダイナミックに
      リンクすることが必要です（出来るだけこちらの方法を）。

    B. 一般ユーザーから
      この DLL を使用するためには、対応したアプリケーションが必要です。
      また、この DLL は Windows のシステムフォルダ（通常は Windows 95
      なら \Windows\system\、Windows NTなら \Windows\system32\）に
      コピーしてお使いください。
      上記以外の場所に置くことは、今後の本 DLL のバージョンアップなどに
      よる仕様変更の際、重大な問題を引き起こす可能性もありますので、
      十分注意が必要です。

３．著作権及び転載について

  ファイルの圧縮、解凍の基本部分の著作権は Igor Pavlov 氏にあります。
  7z 圧縮方式の BZip2 アルゴリズムはJulian Seward 氏が作成し
  PPMD アルゴリズムは Dmitry Shkarin 氏が作成しています。
  統合アーカイバ仕様の DLL 作成部分に関しては
  私 (秋田 稔) が著作権を保有します。

  7-zip32.dll は GNU Lesser General Public License (LGPL)
  の元で配布されています。
  ソフトの改変、再配布等については LGPL に従ってください。
  http://www.gnu.org/copyleft/lesser.ja.html

  また、本ソフトウェアを使用することによって如何なる損害が発生しても
  作者は一切責任を負わないものとします。
  全ては自己責任の元でお使いください。

４．サポート

  A. Web サイト

    http://akky.xrea.jp/

  B. メール

    support（at）akky.xrea.jp

  基本的には質問等はWebサイトのサポート掲示板でお願いします。
  ※（at）は @ に置きかえてください。
  それから統合アーカイバプロジェクトにてメーリングリストが
  運営されていますので(統合アーカイバ DLL 全般を扱います)
  そちらも参考にして下さい。
  また、統合アーカイバプロジェクトでは関連情報が公開されております。
  合わせてご覧いただければ幸いです。

  統合アーカイバプロジェクト
  http://www.csdinc.co.jp/archiver/
　ご意見・ご感想などをお待ちしてます。

　なお、添付ファイル付きメールはウィルス対策の為、基本的にサーバー上で
　削除していますので絶対に送らないでください。

５．バージョン履歴

2014/6/25
・APIの追加。（SevenZipGetLastError)
・APIの追加。（SevenZipSfxConfigDialog)
・APIの追加。（SevenZipSfxFileStoring)
・長いパス名に対応。（NT系のみ、本家 7-zip が対応している範囲で）
・SevenZipCheckArchive で CHECKARCHIVE_FULLCRC フラグを指定し
　パスワードエラーだった場合 FALSE を返すように変更。
・エラー処理の強化。一部エラーを返すべき場面で返していなかったのを修正。
・SevenZipGetArcFileName 等でバッファ不足の場合はエラーを返すように修正。
・SevenZipGetMethod の仕様を若干変更。バッファ不足の際の対応変更等。
・SevenZipOpenArchive で M_CHECK_ALL_PATH と M_CHECK_FILENAME_ONLY
　フラグをサポート。デフォルトで M_CHECK_ALL_PATH("-r") 状態だったのを
  M_CHECK_FILENAME_ONLY("-r-") に修正。
　二つのフラグを同時に使用することで ("-r0") にも対応できます。
・ウィンドウを全く持たないアプリケーションが暗号化ファイルを扱う際
　パスワードウィンドウを表示できなかったバグを修正。
・経過ダイアログの処理速度の項目が100倍に表示される場合があるのを修正。
・SevenZipGetArcAccessTimeEx が更新日時を取得していたバグを修正。
・-slp スイッチが 7-Zip ファイルマネージャーを一度インストールしないと
　使用できないようなので DLL では非サポートとします。（使用は可能です）
・7-Zip 9.22 にてリビルド。
  - -mf=FilterID スイッチにて圧縮フィルタを指定出来ます。以下例。
    a -mf=bcj2 a.7z a.tar
    a -mf=delta:4 a.7z a.wav
    a -mf=bcj a.tar.xz a.tar
  - 64ビット版 Windows では最高 4GB の RAM を使用できます。
  - 幾つかのバグを修正。

2010/12/19
・Unicode モード時に２バイト文字が化ける問題を修正。

2010/12/18
・APIの追加。（SevenSetPriority)
・APIの追加。（SevenZipSet/GetDefaultPassword, SevenZipPasswordDialog)
・SevenZipOpenArchive で M_ERROR_MESSAGE_ON フラグのサポート。
・処理状況ダイアログの詳細情報に経過時間と処理速度の項目追加。
・暗号化書庫解凍の際パスワードが間違ってた場合ゴミが残らないよう再修正。
  解凍中止時に残るゴミは間違って別のファイルを消しかねないので残します。
・内蔵 SFX で PPMd 方式が未対応になってたのを修正。
・7-Zip 9.20 にてリビルド。
  - 7z 書庫で LZMA2 圧縮方式をサポート。
  - 7z ソリッド書庫の更新をサポート。
  - zip 書庫で PPMd 圧縮方式をサポート。
  - インストーラにて書庫のサポートを改善。
  - zip 書庫に NTFS ファイルタイムスタンプを格納します。
  - PPMd コーデックの速度最適化。
  - Intel 32nm CPU にて AES コードの速度最適化。
  - Intel Atom CPU にて CRC 計算コードの速度最適化。
  - -scc スイッチで入出力の文字コードを指定可能。（デフォルトは WIN ）
  - -scrc スイッチで解凍、テスト時に合計 CRC-32 を計算します。
  - ZIP 書庫を作成する際、ディスクの断片化が起きる問題を修正。
  - 幾つかのバグを修正。

  - サロゲートペアユニコード対応。
  - 7z 書庫で Delta フィルタをサポート。 

2010/8/30
・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
・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 Ver4.42.00.04
・長いファイル名のファイルを含む書庫を操作するとオーバーフローが発生する
　セキュリティーホールを修正。
・SevenZipSetOwnerWindowEx() でコールバック関数が呼ばれないバグを修正。
・IE4.0以上がインストールされてない環境でも動作する様に修正(多分)。

2007/5/25 Ver4.42.00.03
・Windows95で使用できなかった問題を修正。
・内蔵自己解凍書庫の小さいアイコンが崩れていたのを修正。
・経過ダイアログ（英語）のテキストの表示が途切れていたのを修正。
・SFX 設定ダイアログのタブオーダーとニーモックを修正。

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

2006/11/30 Ver4.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
　- Ultra モードに於いて Zip/GZip/Deflate の圧縮率が強化されました。
　- -x スイッチで指定した相対パスは、絶対パスで指定したファイルに
　　影響を及ぼします。
　- 新しいスイッチを追加。 : -slt
　　"l"（リスト）コマンドと使用する事で書庫の技術情報を表示します。
　- 新しいスイッチを追加。 : -scs{WIN|DOS|UTF-8}
　　リストファイルで使用されている文字コードを指定します。
　　デフォルトは WIN ですが Unicode モードの時は UTF-8 になります。
　　# Unicode モード : SevenZipSetUnicodeMode で TRUE を指定した時。
　- 幾つかのバグ修正。

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

2006/2/28 Ver4.31.00.02
・Ver4.23.00.01 以降のバージョンでバッファオーバーフローが発生する
　セキュリティーホールを修正。
　ダイアログに表示されるファイル名を短縮する際にファイル名が
　MAX_PATH 以上の長さの時に発生。
・格納ファイル名が設定されていないファイルを含む書庫を開く際に
　例外を発生してしまうバグを修正。

2005/12/6 Ver4.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 Ver4.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 Ver4.23.00.01
・経過ダイアログ、上書き確認ダイアログでファイル名が途中で切れない様
　長すぎる場合は短縮して表示するように変更。
・部分解凍時、処理ファイル名が違ったファイル名を表示してたバグを修正。
・7-Zip コアの大きな変更に対応する為、DLL 部のコードを大きく修正。
・7-Zip 4.23 にてリビルド。
　- ファイルが他のソフトによりロックされている場合は中断しないで
　　警告を出力し、そのファイルの処理をスキップするように変更。
　- コマンドラインのインターフェイスを変更。
　　- 絶対パスを使えるようにしました。
　　- 構文を単純化。
　　　前：a archive.7z Folder1\* Folder2\* -r
　　　今：a archive.7z 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/27 Ver3.13.00.04
・内蔵 SFX ファイルでの自己解凍書庫が出来なくなってたバグを修正。

2004/9/27 Ver3.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 Ver3.13.00.02
・SevenZipSetUnicode API を追加。
　使用する文字コードを UTF-8 にする事で完全に UNICODE に対応可能。
・内蔵自己解凍書庫でPPMdを扱えるように変更。
・解凍するファイルのサイズの合計が 0 の場合、エラーを起こすバグを修正。
・zip 形式の書庫で SevenZipGetWriteTimeEx が使えなかったのを修正。
・暗号化 zip 書庫解凍時にパスワードが間違ってるとゴミファイルが
　作成されるの削除するように修正。
・暗号化 zip 書庫解凍時でパスワードが間違ってる場合は３回まで繰り返し
　パスワード入力画面を表示するように修正。
・暗号化 zip 書庫解凍時パスワードエラーの場合は ERROR_PASSWORD_FILE を
　返すように修正。
・SevenZipFindFirst で _szWildName に -sfx -hide 等、オプションで
　使用されている文字列が指定出来ないバグを修正。
・内部コードで ATL を使用しないように変更。
・通常のビルドでも内部では完全に UNICODE で処理している為
　コンパイルオプションから UNICODE 版の作成を削除しました。
・7-zipCMD.txt のコマンドラインの様式の項目に説明を追加。

2004/2/23 Ver3.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 Ver3.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/28 Ver3.10.00.01
・7-Zip 3.10 にてリビルド。
　解凍時に既存のファイルを自動的に改名するオプション。(-aot スイッチ)
　幾つかのバグ修正。

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

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

2003/9/11 Ver3.09.01.01
・-hideオプションを使用している時、処理を抜ける瞬間に親ウィンドウの
　タイトルバーを掴んでいると処理が抜けられなくなるバグを修正。
・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 Ver3.08.04.01
・プロジェクトを最初から作り直し、内部変更多数。
・SetOwnerWindow 系のAPIを実装。
・経過ダイアログの見た目を変更。
・ソースからUNICODE版をコンパイル可能に。(動作については無保証無検証)
・SevenZipOpenArchive でパスワードを求めらた場合に表示するダイアログを
　呼び出したプロセスが作成したウィンドウを親にして表示するように修正。
・7-Zip 3.08.04 Beta にてリビルド。
　内部的に再建、使用するレジストリを削減。
　幾つかのバグを修正。
　※ -mx オプションの指定方法が変更。(デフォルトの圧縮レベルが変更)
・絶対パス等を含むことで予期しないディレクトリにファイルを
　解凍してしまうセキュリティーホールを修正。

2003/5/23 Ver2.30.32.01
・7-Zip 2.30 Beta 32 にてリビルド。
　幾つか細かな変更。

2003/4/30 Ver2.30.31.01
・7-Zip 2.30 Beta 31 にてリビルド。
　幾つかのバグを修正。

2003/4/20 Ver2.30.30.01
・7-Zip 2.30 Beta 30 にてリビルド。
　zip書庫でBZip方式の圧縮解凍をサポート。
　※ m={MethodID} オプションでDeflate64方式等の圧縮も可能に。
　幾つかのバグを修正。
　幾つかの最適化リコンパイルによりコードのサイズを縮小。

2003/4/10 Ver2.30.29.01
・7-Zip 2.30 Beta 29 にてリビルド。
　幾つかのバグを修正。
　LZMAコードを少し変更。

2003/2/16 Ver2.30.28.01
・7-Zip 2.30 Beta 28 にてリビルド。
　4GB以上の7z書庫のUpdateする事ができるように修正。
　7z形式で非アイテムを扱えるように修正。
　zip形式で空の暗号化されたファイルを圧縮できるように修正。
　7z形式のmaxモード(-mx)にて、辞書サイズを4MBの代わりに8MBを使います。

2003/1/25 Ver2.30.27.01
・パスワード入力時のキャプションが間違ってたのを修正。
・-mheオプションを使用し圧縮された書庫が解凍できなかったバグを修正。
・7-Zip 2.30 Beta 27 にてリビルド。
　非常に大きなファイルを7z形式で圧縮する際の幾つかのバグを修正。
　幾つかのバグを修正。

2003/1/14 Ver2.30.26.01
・7-Zip 2.30 Beta 26 にてリビルド。
　zip書庫でDeflate64方式の解凍をサポート。
　幾つかのバグを修正。

2003/1/5 Ver2.30.25.01
・書庫操作後スレッドハンドルの開放をしていなかったバグを修正。
・7-Zip 2.30 Beta 25 にてリビルド。
　7z書庫の暗号化機能(AES-256)をサポート。
　新しい書庫ヘッダ圧縮モードオプション(-mhcf)を追加。
　書庫ヘッダ圧縮は常にLZMA方法で圧縮されます。
　-ms=off 無しでも非ソリッド書庫のアップデートが可能です。
　幾つかのバグを修正。

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

2002/11/5 Ver2.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 24 にてリビルド。
　幾つか内部を改造。
　-mスイッチの構文を少し変更。
　幾つかのバグを修正。

・-oスイッチで指定した出力先フォルダが無い場合はエラーになる仕様は
　7-Zip 2.30 Beta 22(Ver2.30.22.01)で作成されるように変更された模様。
・SevenZipGetMethod で取得できる圧縮方式は、バッファを多く確保する事で
  より詳しい情報が取得できます。
・書庫がソリッド書庫かどうかを判定する場合は
　SevenZipGetArcCompressedSizeEx を使うべきです。

2002/9/9 Ver2.30.23.01
・7-Zip 2.30 Beta 23 にてリビルド。
　ZIP書庫の暗号化に対応。
　幾つかのバグを修正。

2002/9/1 Ver2.30.22.01
・7-Zip 2.30 Beta 22 にてリビルド。
　現バージョンでは圧縮するファイルに絶対パスを使用出来ないように変更。
　幾つかのバグ修正。

2002/7/9 Ver2.30.21.1
・暗号化zip書庫でディレクトリを含む際、一覧が取得出来ないバグを修正。
・7-Zip 2.30 Beta 21 にてリビルド。
　LZMA(7z)圧縮に必要なRAMを軽減。

2002/7/2 Ver2.30.20.1
・一般公開。
・7-Zip 2.30 Beta 20 にてリビルド。
　LZMA(7z)解凍時に必要なRAMを軽減。
　幾つかのバグを修正。

2002/6/19 β8
・-hide オプション使用時、DLL開放後にエラーで落ちるバグを修正。
・処理状況ダイアログのフォントを変更。

2002/6/15 β7
・APIの追加。（SevenZipGetArchiveType)
・圧縮を途中で中止すると一時ファイルがロックされて残るバグを修正。
・ダイアログ抑制モードで親ウィンドウが非アクティブになるバグを修正。
・ConfigDialog の中身を何も作ってなかったので
　バージョン情報を表示するように変更。
・一部APIの順序数がマニュアルと違っていたので修正。

2002/5/28 β6
・SetOwnerWindow/Ex のメッセージ送信方法を若干変更。
・SetOwnerWindow/Ex で中止させた時、ダイアログが消えないバグを修正。
・-hide オプションが働いていなかったバグを修正。β5のエンバグ。

2002/5/27 β5
・スイッチで最後が'\'で終わるものを<base_dir>と解釈するバグを修正。
・ファイル名で最後が「ソ」等だと<base_dir>と解釈するバグを修正。
・GetFileCount 時、メモリ開放バグがあったのを修正。
・ある環境下で -hide オプションを指定すると固まるバグを修正。

2002/5/25 β4
・<base_dir> オプションに対応。
・FindFirst で _szWildName に NULL を渡すと落ちてしまうバグを修正。
  それに伴い GetFileCount 時に落ちてしまっていた。β3のエンバグ。

2002/5/23 β3
・FindFirst/Next 時、取得出来るデータが一部おかしかったバグを修正。
・FindFirst で _szWildName に複数指定できなかったバグを修正。

2002/5/21 β2
・FindNext で検索するファイルが無い場合に -1 を返すように変更。
・コマンドを""で括ると上手く動かなかったバグを修正。
・SetOwnerWindow/Ex 後、CheckArchive をすると固まるバグを修正。
・FindFirst/Next でカレントディレクトリ以外のファイルを
  検索出来なかったバグを修正。

2002/5/18 β1
・非公式公開。
・7-Zip 2.30 Beta 18 にてビルド。

--------------------------------------------------------------------------------