========================================================================== UnImp32.dll ver.0.17 $Id: Readme.txt,v 1.13 2005/06/17 15:50:49 hyperbeat Exp $ Copyright (C) 2002- HyperBeat ========================================================================== 1. はじめに UnImp32.dllをダウンロードして頂き有り難うございます。 UnImp32.dllは Technelysium Pty Ltd. によって開発された IMP書庫を作成(追加)・展開するライブラリです。 現在NIFTY-Serve FWINDC MES #3にて進行中の統合アーカイバ仕様(仮称)に準拠しています。 2. 動作環境 Windows 95,98,NT 4.0,2000,ME,XPいずれも日本語版で動作します。 3. 配布ファイル構成 UnImp32.dll 本体 ReadMe.txt 説明書(これ) Api.txt API説明書 Command.txt コマンド説明書 UnImp32.lib インポートライブラリ ImpSfx.exe IMP自己展開モジュール src/ ソースコード 4. インストール 展開して出来たファイルUnImp32.dllとImpSfx.exeをシステムディレクトリに コピーしてください。 5. アンインストール 展開したディレクトリとシステムディレクトリのUnImp32.dllとImpSfx.exeを 削除してください。 6. 使い方 A. 一般ユーザ 単体では使用できません。 対応したアプリケーションが必要です。 B. 開発者 使い方は、UnImp32.h,Api.txt,Command.txtを参照してください。 UnImp32.dllを呼び出す際は出来るだけスタティックリンクではなく ダイナミックリンクにしてUnImp32.dllがなくても動作するように設計してください。 7. 転載、再配布について このパッケージはBSD Licenseに従い自由に再配布・転載する事が出来ます。 ソースコードの一部はこのライセンスに当てはまりません。(UnImp.cpp,UnImp.h) UnImp.cpp,UnImp.hは条件付きでのBSD Licenseです。 UnImp.cpp,UnImp.hを使用する場合、展開、リスト以外の応用 (展開コードから圧縮コードの作成等)はしてはなりません。 この条件は、配布元のunimp.cの使用条件と同じです。 IMP書庫のアルコリズムの著作権は Technelysium Pty Ltd. DLL移植は HyperBeat にあります。 BSD License: http://www.opensource.org/licenses/bsd-license.php 8. その他 ・ UnImp32.dllを使用することによって生ずるいなかなる損害も作者は責任を負わない ものとさせていただきます。 ・ UnImp32.dllはMulti Volume書庫には対応していません。 9. 更新履歴 0.17 2005/6/18 ・パスの長さに関するバグの修正。 ・UnImp()でエラーが発生した場合はエラーコードをバッファに書き込むように修正。 ・幾つかの間違ったエラーコードを返すバグの修正。 ・上書き確認ダイアログのファイル名表示に関する改善。 ・その他細かいバグの修正。 0.16 2005/5/20 ・UnImpEnumMembersProc系APIの実装。 ・展開時に書庫名、出力ファイル名がフルパスで表示されない場合があったのを 常にフルパスで表示するように改善。 ・その他細かいバグの修正。 0.15a 2005/4/29 ・スイッチを明示的に終了した場合に以降のコマンドラインが読み込まれない為に 全ての命令においてエラーを返していたバグを修正。 ・書庫ハンドルにファイルサイズ、圧縮サイズが保存されていなかったバグの修正。 ・キャンセルした場合は残りの格納ファイルをキャンセルしたと表示するように しました。 ・E命令(展開)時にワールドカード展開が正しく出来ていない場合があったバグの修正。 ・UnImpFindFirstとUnImpFindNextとの間に格納ファイル情報を取得しようとした際に 常にエラーとなっていたバグの修正。 ・T(正当性検査),L(リスト)命令において-rスイッチを指定していない場合に 正しく正しいリスティングが行われない場合があったバグの修正。 ・libarcdllへ移行した際に発生した幾つかのバグを修正。 ・その他細かいバグの修正。 0.15 2005/4/22 ・S命令においてモジュール名が指定されてない場合はリソースに格納している SFXモジュールを使うようにしました。 ・その他細かい修正。 0.14a 2005/4/16 ・展開時にスキップが表示されない場合があるバグの修正。 ・ファイルが存在しない場合にUnImpの戻り値が0になるバグの修正。 ・基準ディレクトリを指定せずに解凍する格納ファイル名を1つ指定している場合に パス名の最後の\若しくは/が存在しないと落ちるバグの修正。 ・基準ディレクトリのディレクトリ記号に'/'の場合にディレクトリが作成されない バグの修正。 ・UnImpCheckArchiveが正しく動作しない場合があったバグの修正。 ・ウィンドウが中央に表示されるように改善。 ・その他細かいバグの修正。 0.14 2005/4/14 ・libarcdllの適応。 ・ImpSfx.exeをUnImp32.dllのリソースに格納するように変更。 ・配布形式を実行形式に変更。 ・その他細かいバグの修正。 0.13 2005/1/14 ・フォントをシステム使用の物に変更。 ・UINT64ではなくLONGLONGを使うようにしました。 ・ステータスダイアログを親ウィンドウの中心にするようにしました。 ・その他細かい修正。 0.12 2004/12/15 ・ライセンスの変更。 0.11 2004/12/7 ・不正なコマンドラインを送ると呼び出し側ウィンドウがDisibleのままになる バグを修正。 ・展開したファイルの時間が更新されないバグを修正。 ・その他細かい修正。 0.10 Beta 3 2004/10/4 ・フォントをMS UI Gothicに変更。 ・UnImpConfigDialogを仮実装。(バージョンダイアログを表示します。) ・UnImpExtractを仮実装。(常に-1を返します。) ・a命令(追加)を仮実装。(まだ使えません。) ・圧縮関連スイッチ(-l,-v,-t)を仮実装。 ・その他細かい修正。 0.10 Beta 2 2004/9/24 ・レスポンスファイルに対応しました。 ・自己展開モジュールをパッケージに組み込みました。 ・s命令(自己展開書庫の作成)を実装。 ・一部展開でパスが存在する格納ファイルが展開できないバグを修正。 ・展開時にファイルが作成できなかった場合に書庫が作成できなかったという エラーコードを返していたバグを修正。 ・その他細かい修正。 0.10 Beta 1 2004/9/18 ・展開できない場合(ディレクトリが存在しない。)があったバグを修正。 ・スイッチで値を指定しない場合にデフォルトの値をセットできなかったバグを修正。 (エラーとなっていた。) ・ver.0.07まで存在していたテストコマンド(t)が0.08から指定できなかったバグを 修正。(一からやり直した際に実装するのを忘れてました。) ・スイッチを明示的に終了させた場合に必ず0x8029を返すバグを修正。 (--が書庫と判断していたために) ・上書確認ダイアログで文字化けするバグを修正。 ・その他細かい修正。 0.09 2004/9/2 ・uスイッチで更新しない項目(-u4)を追加。 ・jpスイッチを追加。(不正パスの対処。) ・API.txtに間違いを書いていたので修正。 ・UnImpFindNext()で検索終了後なんらかのAPIを実行すると常にエラーを返すバグを 修正。 ・INDIVIDUALINFO構造体のdwCompressedSizeにでたらめな値が入っていたバグを修正。 (常に0が入ります。) ・UnImpIsSFX()で正しい値が返るように修正。 ・その他細かい修正。 0.08 2004/8/28 ・Unimp***,UnImp***どちらでも使えるようにしました。 ・UnImpGetSubversion()再実装。 ・OpenArchiveで複数書庫を扱えるようにしました。 ・幾つかスイッチを追加。 ・展開速度の高速化。 ・その他細かい修正。 0.07 2003/7/4 ・xコマンドで展開した場合パスが保存されない場合があったバグ修正。 ・-aを指定しても属性が保存されないバグ修正。 ・szAttributeメンバが常に""だったバグ修正。 ・UnImpIsSFXFileを追加。 0.06 2003/6/22 ・ディレクトリ作成用バッファを24バイトしか取っておらず24バイト以上の ディレクトリが作成できなかったバグ修正。 ・展開中のディレクトリ表示に格納ファイルのパスも含めるようにしました。 ・UnImp()のコマンド処理をいくつか追加、修正。 ・すべてスキップを選択した場合キャンセルしても展開処理が中止されないバグ修正。 0.05 2003/6/20 ・ConfigDialog()廃止。 ・GetSubVersion()廃止。 ・解凍状況表示を少し変えてみました。 ・格納ファイルがディレクトリの時に格納方法(methodメンバ)を"IMP"を"DIR"に 変えましたファイルの場合は"IMPx"になります。 ・コマンドを少し追加。 ・自己展開書庫が展開できなかった場合があったバグ修正。 ・API名がUnimp*からUnImpへ変更になっています。 0.04 2002/11/23 ・解凍中に中止できるようにした。 0.03 2002/10/27 ・コマンドライン指定時に C:\testfolder\" のように片方だけ " をつけると 一般保護エラーになっていたバグ修正。 ・ConfigDialog() で表示するバージョンが0.0.6.1になっていたバグ修正。 0.02a 2002/10/22 ・上書きのときにファイルがなくてもfclose()を使っていたバグ修正。 0.02 2002/10/22 ・解凍対象ファイルを指定しないとすべてのファイルが解凍されないバグ修正。 0.01 2002/10/21 ・スペースが入ったファイル名についてのバグ修正。 ・その他細かいバグ修正。 ・ソースコードを同梱する。 ・UnimpGetSubVersion を追加。 0.01 Beta 21 2002/10/16 ・ConfigDialog でバージョンが0.0.5.5と表示していたミス修正。 ・バージョンを5と返していたバグ修正。 0.01 Beta 20 2002/9/26 ・Unimp()で部分解凍ができるようにした。(ワイルドカード指定可) 0.01 Beta 19 2002/9/24 ・処理を少し軽くした。 ・解凍中にウィンドウが動かせるようにした。(処理を軽くできたし) 0.01 Beta 18 2002/9/23 ・タイムスタンプが正常に復元されてない場合があったバグ修正。 ・UnimpConfigDialog()が説明書ではバージョンが表示されると書いてるのに バージョンを表示してなかったミス修正。 0.01 Beta 17 2002/9/22 ・解凍に失敗したときにディレクトリを消すのを忘れてたバグ修正。 0.01 Beta 16 2002/9/22 ・タイムスタンプが9時間ずれていたバグ修正。 0.01 Beta 15 2002/9/21 ・解凍時間を少し早めた。 0.01 Beta 14 2002/9/20 ・メモリを解放するの忘れてたのを修正。(かなりあった) ・EnableWindow()を使ってなかったミス修正。 0.01 Beta 13 2002/9/19 ・UnimpCloseArchive()を使用後に書庫データを初期化していなかった致命的なバグを 修正。 0.01 Beta 12 2002/9/19 ・UnimpCloseArchive()使用後にUnimpOpenArchive()を使うと常にNULLが返却される バグ修正。 0.01 Beta 11 2002/9/19 ・コマンドを1つ追加。 ・とりあえず作成時間は更新時間と同じにした。 ・ファイルサイズ取得時のエラーを修正。 ・格納ファイルの最後が取得できなかったバグ修正。(たぶん) 0.01 Beta 10 2002/9/19 ・FindFirst/Nextは一応修正した。 0.01 Beta 9 2002/9/18 ・ver 0.0.3.1の復元バグの更新時間は復元されるようになった。 0.01 Beta 8 2002/9/18 ・解凍時のタイムスタンプが復元されていなかったバグ(これはバグなの?)を 一応修正したと思います。(テストしてません) 0.01 Beta 7 2002/9/17 ・UnimpCheckArchive(),UnimpGetFileCount()を使用後にUnimp()を使用すると デバッグ用のリストを作成していたバグ修正。 0.01 Beta 6 2002/9/15 ・UnimpFindNext()で返却値が2,3になる場合があったバグ修正。 0.01 Beta 5 2002/9/15 ・UnimpOpenArchive系が少しまともになったのでエントリし直した。 0.01 Beta 4 2002/9/14 ・UnimpOpenArchive系のAPIでたまに落ちることがあったのでとりあえず当分の間 消しておくことにした。 0.01 Beta 3 2002/9/13 ・.defファイルにUnimpCheckArchiveを書くのを忘れていたので追加。 0.01 Beta 2 2002/9/13 ・統合アーカイバ仕様にあわせてみた。(ちょっととだけ) 0.01 Beta 1 2002/9/12 ・初バージョン。 10. 連絡先など メール: t-nakai@hyperbeat.co.uk ホームページ: http://hyperbeat.co.uk/ UnImp32.dllの情報はhttp://arcdll.org/index?UnImp32.dllを 参照してください。 関連リンク http://www.csdinc.co.jp/archiver/ http://arcdll.org/ バージョンアップの際に通知してくれという方はメールしてください。 バージョンアップの時にはメールにて通知します。 又、k.inaba氏開発のcaldixを定期的に実行することにより、UnImp32.dllを常に 最新版にする事が出来ます。 caldix: http://www.kmonos.net/lib/caldix.ja.html 最新のソースコードは CVS : http://cvs.arcdll.org/cgi-bin/viewcvs.cgi/arcdll/UnImp32/ Tarball: http://cvs.arcdll.org/cgi-bin/viewcvs.cgi/arcdll/UnImp32/UnImp32.tar.gz?tarball=1 で入手することが出来ます。 バグ報告や要望、意見などは http://sourceforge.jp/tracker/index.php?func=add&group_id=286&atid=5535で お願いします。