自己解凍書庫の修正履歴、及び説明
■自己解凍書庫 ANSI Version v.1.52 (2016/07/11)
【修正 v.1.52】
・コンパイル時に /DELAYLOAD (DLL の遅延ロード) オプションを指定し、SFX モジュ
ールの動作に必要な DLL (kernel32.dll 以外) は動的にロードされるように変更し
ました。
【修正 v.1.51】
・コンパイラオプションで CRTDLL.LIB へリンクしていたのを MSVCRT.LIB へのリンク
へ変更しました。
・自動実行形式自己解凍書庫が DLL をロードする場合の対策として、
SetDefaultDllDirectories() を call して自動実行ファイルの実行後にカレントフ
ォルダの DLL をロードをしないように対策を行いました。
【修正 v.1.50.1】
・上書き確認ダイアログ内のアイコンが実際のモジュールのアイコンと異なる場合が
あった点に対処しました。
Version v.1.50 (2016/06/11)
【修正 v.1.50】
・ANSI版 SFX モジュールの作成で、TEMP フォルダ以外の既に存在するフォルダへ展開
を行う「自動インストール自己解凍書庫」を作成して実行した場合、展開先以下に
「圧縮には含まれていない全く関係ない空フォルダ」を RemoveDirectory してし
まう問題を修正しました。
・[-1] ANSI 版の SFX は Windows 95 以降のすべての Windows 環境で動作します。
(Unicode 版の SFX は XP 以降の環境をサポート)
Explzh で利用される場合は、展開後、Explzh のインストール先フォルダ
へコピーしてください。
■自己解凍書庫 UNICODE Version v.8.00 / UNICODE x64 Version v.10.00 (2023/05/08)
-- UNICODE x64 Version --
【修正 v.10.02】
・msvcrt.lib 版を標準版に変更。
【修正 v.10.01】
・LHA-SFX 作成後、展開先フォルダが Desktop に固定されていたバグを修正。
・ZIP-SFX でパスワード入力ダイアログボックスの2バイトのファイル名文字が文字化け
していたのを修正。(ZIP版のみ)
【v.10.00】
・リリース。(Vista 以降の 64bit版 に対応しています)
-- UNICODE x86 Version --
【修正 v.8.02】
・msvcrt.lib 版を標準版に変更
【修正 v.8.01】
・LHA-SFX 作成後、展開先フォルダが Desktop に固定されていたバグを修正。
・ZIP-SFX でパスワード入力ダイアログボックスの2バイトのファイル名文字が文字化け
していたのを修正。(ZIP版のみ)
【修正 v.8.00】
・ZIP-SFX、CAB-SFX(Unicode版)では一部の日本語マルチバイト文字をUTF-8と誤認識する
問題を修正。(Vista 以降の 32bit/64bit版 に対応しています。ANSI版はありません)
■自己解凍書庫 UNICODE Version v.7.05 (2016/07/11)
【修正 v.7.05】
・コンパイル時に /DELAYLOAD (DLL の遅延ロード) オプションを指定し、SFX モジュ
ールの動作に必要な DLL (kernel32.dll 以外) は動的にロードされるように変更し
ました。
【修正 v.7.04】
・自動実行形式自己解凍書庫が DLL をロードする場合の対策として、
SetDefaultDllDirectories() を call して自動実行ファイルの実行後にカレントフ
ォルダの DLL をロードをしないように対策を行いました。
【修正 v.7.03.1】
・上書き確認ダイアログ内のアイコンが実際のモジュールのアイコンと異なる場合が
あった点に対処しました。
【修正 v.7.03】
・Unicode 版 SFX の差し替え。
・LZH-SFX 版の展開後、ファイルのタイムスタンプが作成時の日付にな
ってしまっていたバグを修正しました。
・SFX 作成ダイアログで自動実行自己チェックサム(CRCチェック)機能
をチェックして作成した自己解凍書庫が CRCチェックと展開を行わず
に終了してしまっていたバグを修正しました。※自己解凍書庫はでき
るならデジタル署名を付加されることを推奨します。(セキュリティソ
フトによっては、ウィルスと誤検知され、自己解凍書庫そのものを削
除されてしまう場合があります。)
Explzh で利用される場合は、展開後、Explzh のインストール先フォルダ
へコピーしてください。
================================================================
■謝辞
・LHA解凍ルーチンは奥村 晴彦氏と吉崎 栄泰氏の ar (compression archiver) や
LHA.EXE のソースコード、他にも LHACCESS (Dos/Win) や K.INABA氏の XacRett
等、数々の公開ソースコードを参考にさせていただきました。
・ZIP解凍ルーチンは Info-UNZIP のソースコードを参考に作成しました。
UNZIP Copyright (C) 1990-2016 Info-ZIP.
・CAB解凍ルーチンは、マイクロソフトの CAB-SDK を利用して作成しました。
Cabinet Software Development Kit (C) 1994-1997 Microsoft Corporation.
■自己解凍スタブモジュール説明
●SFX の作成方法
DOS プロンプトから、
copy /b decxxx.exe + xxx.(lzh/zip/cab) newsfx.exe
等として連結してご使用ください。
■コマンドラインオプション
decxxx.exe "xxx.arc" "解凍先フォルダ"
※ 解凍先フォルダ を指定する場合は必ず "" で括る。
下記のオプションパラメータを指定できます。
/o 上書き時、確認メッセージを非表示 (強制上書き)
/n 解凍後、エクスプローラを起動しない
/e:xxxxx xxxxx に解凍後に実行させる格納ファイルを指定。
スペースを含む場合は "" で括る。
/d /e:xxxxx で指定したファイルを実行終了後(終了まで
待機します)、解凍した全ファイルを削除します。
スペースを含む場合は "" で括る。
例:/e:"install.exe"
/h 展開前に「解凍先指定ダイアログ」を表示しない
(自動実行時はオプション指定に関わらず、
「解凍先指定ダイアログ」を表示しません)
|