======================= UNLHA32.DLL Ver 1.47a ======================= Micco (Mar.1,2000) ######################################################################## ########## ######### ########## 自己解凍書庫以外での lh6/lh7 形式での配布は行わない ######### ########## ようにお願いします。 ######### ########## ######### ########## UNLHA32.DLL には 2000 年問題は存在しません。ただし,######### ########## 対応ソフト側がそういう扱いをすれば,いくらでも問題 ######### ########## が発生します。 ######### ########## ######### ########## UNLHA32.DLL の使用以前の,『使用言語の仕様』につい ######### ########## ての質問にはお答えできません。『使用言語での API や ######### ########## DLL の使用方法を理解した上』で DLL を使うようにして ######### ########## ください。 ######### ########## ######### ########## ドキュメントは最後まで目を通すように。(^^;) ######### ########## ######### ######################################################################## [よくある不具合] ======================================================================== ■配布ファイルを展開したのに UNLHA32.DLL だけ表示されない  Explorer ではユーザーが指定しない限り ".DLL" の拡張子をもつファイル は表示されません。 他のファイラーを使用するか,Explorer の「表示―オプ ション」メニュー (IE 4.0 が導入された環境では「表示―フォルダオプショ ン」) ですべてのファイルが表示されるように設定してください。 ■UNLHA32.DLL 対応プログラムで使用するための UNLHA32.DLL のインストール について  UNLHA32.DLL をウィンドウズシステムディレクトリ(Win95 の場合,通常 \WINDOWS\SYSTEM)にコピーしてください。 他のファイルは特に必要がありま せん。NT の場合は \WINDOWS\SYSTEM32 となります。  なお,UNLHA32.DLL のコピーは,UNLHA32.DLL が使用中でないかどうかを確 認してから行うようにしてください。UNLHA32.DLL が動作中でなくとも,何ら かのプログラムにより使用 (ロード) されている可能性があります。 ■Ver 1.45 以降の DLL を使用した場合に,対応ソフトが正常に動作しない  『Ver 1.45 以降ではダメで Ver 1.44 以前なら大丈夫』という現象が発生 した場合は,UNLHA32.DLL のログ出力における改行コードの変更が原因となっ ていることが考えれます (例えば GV 0.84a 等)。この現象が発生した場合は, DLL の設定ダイアログが呼び出せるソフトを使用して『旧式ログ出力』を有効 にすることで,不具合を回避することができます。  可能であれば,COMMAND.TXT のレジストリの項目を参照した上で,レジスト リによるソフトごとの個別設定を行ったほうがよいでしょう。 ■「厳格なファイル名サーチ」設定について  この設定については,通常チェックをはずすようにしてください。この設定 が有効になっていると,大抵のアプリでパス情報付きの格納ファイルが表示さ れなくなります。そのようなファイルが表示されない場合は,UNLHA32.DLL の 設定ダイアログを呼び出せるプログラムを用いて,この項目の設定を確認して ください。 ■タイムスタンプのずれについて  UNLHA32.DLL が通常作成する書庫では,タイムスタンプはすべて協定世界時 (UTC)で扱われます。DOS(DOS 窓を含む)や Win3.1 用のプログラムは環境 変数の設定に基づいて UTC→地方時間(例えば日本標準時間)への変換が行わ れるようになっているため,環境変数が設定されていない環境ではタイムスタ ンプがずれてしまいます。 もしタイムスタンプが 9 時間ずれているようなら 間違いなくこの不具合です。 使用するプログラムによっては,まれに 2 時間 だけずれる場合もありますけど…("TZ" が設定されていない場合に PST とみ なすプログラムがあるんです ^^;)。  日本国内においては,次の環境変数を設定してください。なお,これは Win 95 等の DOS 窓でも必要となります。通常は autoexec.bat で設定を行います。 set TZ=JST-9  環境によっては,"TZ=JST-09" とする必要があるかもしれません。  上記の設定を行った場合でも,Win95 ではシステムの内部情報が異常となり 正常なタイムスタンプでの展開が行われないことがあります。このような場合 には,タイムゾーンの設定をやり直すことで大抵の場合は正常な動作となりま す。 ======================================================================== 0.はじめに  「UNLHA32.DLL」をダウンロードしていただき有り難うございます。  UNLHA32.DLL は,LHA.EXE を Windows 3.1 用に移植した UNLHA.DLL を,さら に Windows NT 等 32 ビット環境で使用可能なように再移植を行った DLL (ライ ブラリ) です。"32" の名前が示すように Win32 用のプログラムであり,Win 95/ 98,Win NT (ただし x86),Win32s 等 Win32 環境でのみ動作可能です。  名前に反して Ver 0.19 からは格納にも対応しています。Win 版自己解凍書庫 については,UNLHA.DLL 同様 Mt.Wide 氏の「ファイルマネージャ拡張メニュー Explorer 拡張メニューではない ^^;)」で作成されるものと同等のものが作成可 能となっています(Windows 及び NT 版)。  UNLHA32.DLL は開発中のバージョンであり,API 等については今後変更される ことが考えられます。現在のものが最終決定版ではないということを十分ご理解 の上ご使用ください。また,(まだ登場していませんが) LHA for NT の仕様に伴 い,UNLHA32.DLL においても書庫及びヘッダ形式,コマンドやスイッチ等の仕様 が,また,今後変更される可能性があります。 1.ファイルについて  UL3147B1.EXE を展開すると以下のファイルが得られます。 UNLHA32.DLL : 32 ビット版 DLL 本体です。 UNLHA32.H : UNLHA32.DLL を使用するためのヘッダファイルです。 UNLHA32.LIB : UNLHA32.DLL を使用するためのインポートライブラ リです。 ただし,BC++ 用なので VC++ では使用で きません。 UNLHAVC.LIB : VC++ 用のインポートライブラリです。 UNLHA32.TXT : このドキュメントです。 API.TXT : UNLHA32.DLL の基本 API 説明ファイルです。 COMMAND.TXT : UNLHA32.DLL へ渡すコマンドオプションについての 説明ファイルです。ヘッダや圧縮メソッドの概略, SFX についての説明もここに記述されています。 HEADER.TXT : 書庫ヘッダの仕様説明ファイルです。 WINMES.TXT : UNLHA32.DLL が送出するメッセージと関連 API の 説明ファイルです。 ENUMAPI.TXT : UnlhaSetEnumMembersProc() 関連 API の説明ファ イルです。 INFCOM.TXT : Win32SFXM で使用される設定ファイル用のコマンド 説明ファイルです。 HISTORY.TXT : UNLHA32.DLL の履歴。 ! 及び $ : 自己解凍以外の方法で展開を行った場合は,これら のファイルが展開されます。必要ないので削除して も問題ありません。  バンドルや書籍等への収録の場合, UNLHA32.DLL と UNLHA32.TXT のみである ことが多々ありますが,他のドキュメントにも重要な情報が記述されていますの で,なるべくオリジナルの配布ファイルを手に入れて,一読されることをお薦め します。 2.使い方  UNLHA32.DLL はライブラリなので,単独での使用はできません。必ず対応アプ リが必要となります。 A. プログラマが対応アプリを作成する場合 API 等については,API.TXT をはじめとした各ドキュメントを参照して ください。UNLHA32.DLL を使用するには UNLHA32.H をインクルードし, リンク時に UNLHA32.LIB (又は UNLHAVC.LIB) をリンクするか, LoadLibrary()/GetProcAddress() によりダイナミックリンクすること が必要です。プログラムの手間は増えますが,DLL がインストールされ ていない場合など,ロード失敗の際にプログラム側で自由に対処が可能 となるダイナミックリンクの方法をお薦めします。 後述されている『統合アーカイバプロジェクト』では,UNLHA32.DLL を 始めとしたアーカイバ DLL の使用法等が紹介されています。 B. 一般ユーザが対応アプリを使用する場合 この DLL を使用するには,必ずこの DLL に対応したアプリが必要とな ります。『UNLHA32.DLL に対応』と明記されたアプリを使用してくださ い。 この DLL はウィンドウズ・システムディレクトリ (Win95 の場合, 通 常は \WINDOWS\SYSTEM) にコピーしてください。 3.動作環境  UNLHA32.DLL は以下の環境での動作を確認しています。 Warp を含む OS/2 で の Windows セッションでは動作しません。Power MAC の SoftWindows 上では問 題なく動作する模様。(^^;) [開発環境] ・Microsoft Windows 2000J (Pro) Build 2195 NEC PC-LW23D53D LaVie NX LW23D/53D改, MK-6411MAT,128MB-RAM ・Microsoft Windows 98J SE Build 2222A + IE 5.0 東芝 PAS405JA DynaBook 4050X/CDTA改, MK-8113MAT,192MB-RAM [使用コンパイラ] UNLHA32.DLL 本体 : Microsoft Corp Visual C++ 4.0J std / 5.0J pro (^^;; DosSFX : SLR Systems OPTASM 1.60 + Turbo Link 7.1.32.2 WinSFX(M) : Borland International Borland C++ 5.01J Dev WinSFX32(M) : Microsoft Corp Visual C++ 4.0J std / 5.0J pro [動作環境] ・Microsoft Windows 2000J (Pro) Build 2195 NEC PC-LW23D53D LaVie NX LW23D/53D改, MK-6411MAT,128MB-RAM 東芝 PA1271CA DynaBook Satellite 325CDT/4.0,96MB-RAM ・Microsoft NT 4.0J Build 1381 + IE 4.01(SP1) 富士通 FMVNU516X1 FMV BIBLO-NUV16X,96MB-RAM (SP5) ・Microsoft NT 4.0J Build 1381 + IE 3.02a 東芝 PA1241SA DynaBook Satellite Pro 440CDX/1.4改, MK-3205MAV,64MB-RAM (SP3) Akia T510V Tornado 510V 改,P55C-166(133)MHz + MK-2103MAV,40MB-RAM (SP1) ・Microsoft NT 3.51J Build 1057 富士通 FMVNU516X1 FMV BIBLO-NUV16X,96MB-RAM (SP5) ・Microsoft Windows 98J SE Build 2222A + IE 5.0 東芝 PAS405JA DynaBook 4050X/CDTA改, MK-8113MAT,192MB-RAM ・Microsoft Windows 98J Build 1998 + IE 5.0 富士通 FMVNU516X1 FMV BIBLO-NUV16X,96MB-RAM ・Microsoft Windows 95J Build 1212 (OSR 2.5) + IE 4.01(SP1) 富士通 FMV1NU2WB5 FMV BIBLO-5233NU/W, 32MB-RAM ・Microsoft Windows 95J Build 1212 (OSR 2.1) + IE 4.01(SP1) NEC PC-MB12CUDA1 mobio NX/UD model A1,48MB-RAM ・Microsoft Windows 95J Build 1111 (OSR 2.0) + IE 3.02 Canon SINVA370 INNOVA NOTE 3400DXII改,P55C-150(166)MHz + DTNA-22160,48MB-RAM ・Microsoft Windows 95J Build 950a (SP1-kernel 952) + IE 4.01(SP1) 東芝 PA1241SA DynaBook Satellite Pro 440CDX/1.4改, MK-3205MAV,64MB-RAM ・Microsoft Windows 95J Build 950a (SP1-kernel 952) + IE 3.02 Akia T510V Tornado 510V 改,P55C-166(133)MHz + MK-2103MAV,40MB-RAM ・Microsoft Windows 95J Build 950a (SP1-kernel 952) + IE 2.0 富士通 FMV50NLYH5 FMV BIBLO-5100NLY,24MB-RAM ・東芝 日本語 Windows 3.1 R2.04.00C + Win32s 1.30E Build 166 (東芝 MS-DOS 6.2/V) 東芝 EVS081TD DynaBook V486/E改,MK-1926FCV,12MB-RAM ・Microsoft Windows 3.1J R1.0 + Win32s 1.25J Build 142 (MS-DOS 6.2/V) 東芝 PA1241SA DynaBook Satellite Pro 440CDX/1.4改, MK-3205MAV,64MB-RAM ・Turbo Linux 4.3 + Wine 990523 (+ Win98J SE) 東芝 PAS405JA DynaBook 4050X/CDTA改, MK-8113MAT,192MB-RAM 4.転載及び著作権について  UNLHA32.DLL はフリーソフトウェアです。商用目的ではない,個人的な使用, オリジナル書庫での他ネット等への転載及び配布に関しては特に制限は付けませ ん。ただし,転載・配布する場合に,メディア代等以上の手数料を徴収したり, 使用に制限を付けることはこれを禁じます。書庫ファイル及び格納ファイルの改 変を含むオリジナル配布書庫以外の形態での転載・配布は認めません。  他ネット等への転載時には,事後でも構いませんので私まで連絡をお願いしま す。  商用・公用・私用にかかわらず,書籍等への収録やソフトへのバンドルについ ては条件がありますので,必ず事前に連絡をお願いします。企業等での業務利用 や業務用ソフトでの使用を前提とした転載もこれに含みます。連絡がなかった場 合には,しかるべき処置を講じさせていただく場合があります。  これらの転載・収録・バンドル等の場合は, 必要な場合はライブラリ (DLL) が UP されていたネット等のライブラリ管理者にも必ず連絡をお願いします。  UNLHA32.DLL の圧縮・展開ルーチン等については,基本的に LHx.EXE Ver 2.02a のソースを流用し,AR.EXE 950528 を参考に改変を行っています。従って,この 部分についての著作権は吉崎栄泰氏及び奥村晴彦氏が保有しています。Win版 及 び NT版 自己解凍ルーチンについては Mt.Wide(広山雅明)氏が著作権を保有して います。DLL 化等その他の部分についての著作権はMiccoが保有しています。  これらのプログラムの使用によって生じた損害等については,作者及び原著作 者は何も補償する義務を負わないこととさせていただきます。 5.公開先について  UNLHA32.DLL の一次配布先は,http://www2.nsknet.or.jp/~micco/micindex.html となっています。 β版については,(当然ながら) あまり転載が行われない関係 上ここからダウンロードすることになると思いますが,正式版については,比較 的タイムラグも少なく, また DLL の使用法等の情報も得られることから『統合 アーカイバプロジェクト』http://www.csdinc.co.jp/archiver/ 等からダウンロー ドされるのもいいかと思います。 6.サポートについて 1.メール GCH03345@nifty.ne.jp メールは基本的にはこちらにお願いします。 micco@po2.nsknet.or.jp NIFTYSERVE にメールが送れない場合はこちらとな ります。 2.会議室 Nifty-Serve FWINNT MES(11) 【意見】オンラインソフト情報広場[DLL] FWINDC MES( 3) 【仲間】共同開発仲間募集・ネタ#2 バグ報告,意見要望等はなるべくこれらの会議室で お願いします。一応,FWINDC が API の仕様等のネ タ。FWINNT がバグ報告と役割分担されています。  基本的に,私は日に 1 回しかアクセスできませんので,最低 3 日ほどの余裕 をもってメールするようにお願いします。『読んですぐ返事』が不可能 (なほど メールがたくさんくる ^^;) 関係上, 下手をすると返事が 2 日後…ということ になりますので。  なお,UNLHA32.DLL は吉崎氏に連絡した上で私が独自に開発したものであり, 基本的に吉崎氏は関与していません。従って,吉崎氏へのメールは御遠慮くださ るようお願いします。WinSFX 関係の Mt.Wide 氏についても同様です。  また, 『統合アーカイバプロジェクト』http://www.csdinc.co.jp/archiver/ の管理者である shoda T. 氏への問い合わせメールが増えています。 UNLHA32. DLL そのものに関する問い合わせは私のほうにお願いします。 7.謝辞  素晴らしいアーカイバ LHA を作成された吉崎栄泰氏,Win 版及び NT 版自己 解凍ルーチンの使用を許可してくださり,また,ルーチンを供与してくださった Mt.Wide さん,そして作成を影で支えてくださったユーザの皆さんに感謝します。 8.最後に UNLHA32.DLL が何かのお役に立てれば幸いです。 Micco (GCH03345@nifty.ne.jp)