2007年12月23日日曜日

Universal Extractor

ExplzhやWinRARで解凍できないインストーラなどを解凍することができます。
PEiDというツールで圧縮形式を分析して該当するツールに渡し、それを解凍するGUI(マウスだけで操作できる)ツールです。

PEiDやその他の解凍ツールは、他の作者が開発したもので、元々あったのですが、CUI(文字を入力して操作するもの)で使いにくかったり、また、作者がバラバラなので探してくるのが面倒くさかったりしました。

Universal ExtractorはそれらのツールをまとめてGUIで操作できるようにしたものです。

Windows Installer packageInno Setup package といった、インストーラを解凍して中のファイルを取り出したり、UPX圧縮されたEXEファイルを解凍したりできます。
コマンドを入力せずに、解凍できるので大変便利です。
Language File によって日本語表示できます。

Universal Extractor のページの真ん中あたりに Download の項目があるので、そこからダウンロードできます。

UniExtract Installer (インストーラ版)と UniExtract Binary Archive(アーカイバ版)がありますが、アーカイバ版がおすすめです任意のフォルダに解凍して UniExtract.exeへのショートカットを 「送る」(%USERPROFILE%\SendTo\)に置くだけで完了です。
*.msi等のファイルを右クリックして→送る→UniExtract.exeとすれば解凍できます。
レジストリの知識のある方は、必要な拡張子だけ右クリックメユーに登録すると便利です。
インストーラ版は選択の余地なしに、全ての対応拡張子を関連付してしまいます。レジストリ項目がかなり増えてしまいますし、対応拡張子を右クリックすると、「解凍」「ここに解凍」「フォルダに解凍」という3つの項目が必ずでるようになって、煩わしくなってしまいます。

レジストリを編集して関連付する方法

ここではWindows Installer Package「フォルダに解凍」 メニューを付けてみます。

1. HKEY_CLASSES_ROOT\Msi.Package\shell を開きます。
2. そこにuniextract_subというキーを作って、(Default)に文字列値 フォルダに解凍(&S) と入力する。
3. uniextract_sub を右クリックして command というキーを作る。
4. (Default)に文字列値 "UniExtract.exeへのフルパス" "%1" /sub と入力する。
5. これで完了です。

/subというのは「ここにフォルダを作って解凍する」スウィッチです。
/subのところを "."にすると 「ここに解凍」になります。
なにも付けないと、Universal Extractorで開きます。

実をいうと、このソフトは最近知ったのですが、コマンドでやらなくて済むので便利ですね。主にインストーラからファイルを取り出すのに使ってます。