[BlueLeaf1336]> PROBLEMS> DownX>

DownX - Support Options

historyTOP

2004/04/05:作成

どれをサポートしよう?TOP

大量にあるUPXのオプション機能のうち、どれをサポートすると十分かというのを検討することにします。まず、存在する全てのオプションスイッチを説明書から抜き出してみると...多すぎるのでよします。チョボチョボと抜粋しながら考えていきます。じゃなくて、サポートするモノを考えて抜粋していきます。以下、オプションなのかスイッチなのかコマンドなのか、ヘルプにははっきりと明記しているのですが呼び分けるのが邪魔くさいので「upx.exe HOGE」の「HOGE」の部分に書くものは全てスイッチと呼称します。

表示系TOP

まずは、表示するだけのものから。これは簡単。

スイッチ内容コマンド例
無指定簡単なヘルプupx
-Vdisplay version numberupx -V
-Ldisplay software licenseupx -L

他にもヘルプやらなんやらありますが、GUIで使おうとする時には必要がないものばかりと思いますのでこの2つだけを。

解凍系TOP

次に簡単な解凍を。これも簡単。

スイッチ内容コマンド例
-duncompress the file you've just compressedupx -d yourfile.exe

ただ、実際には圧縮されたもののみが解凍されて、圧縮されてないものについてはエラーになるんですがそのあたりは後で考えます(たとえば圧縮されているものは解凍して、圧縮されてないものは圧縮するとか...)。

圧縮系TOP

で、メインディッシュです。当然ですがこれをするためのプログラムですので嫌になるほどスイッチがあります。

圧縮レベル

スイッチ内容コマンド例
無指定The default compression level is -8 for files smaller than 512 kB, and -7 otherwise.upx yourfile.exe
-1
-2
-3
Compression levels 1, 2 and 3 are pretty fast.upx -1 yourfile.exe
-4
-5
-6
Compression levels 4, 5 and 6 achieve a good time/ratio performance.upx -4 yourfile.exe
-7
-8
-9
Compression levels 7, 8 and 9 favor compression ratio over speed.upx -7 yourfile.exe
--bestyou definitely should use it when releasing a final version of your program.下記参照

リリース用圧縮

  1. upx --best --crp-ms=999999 --nrv2b -o result_2b.exe yourfile.exe
  2. upx --best --crp-ms=999999 --nrv2d -o result_2d.exe yourfile.exe
  3. keep the smaller of the two resulting executables.

バックアップ

スイッチ内容コマンド例
無指定no backup filesupx yourfile.exe
-kkeep backup filesupx -k yourfile.exe

エクスポートセクション圧縮
compression ratio quite a bit but may not work with all programs (like winword.exe).

スイッチ内容コマンド例
--compress-exports=0Don't compress the export section.upx --compress-exports=0 yourfile.exe
--compress-exports=1Compress the export section.[DEFAULT]upx yourfile.exe

アイコン圧縮

スイッチ内容コマンド例
--compress-icons=0Don't compress any icons.upx --compress-icons=0 yourfile.exe
--compress-icons=1Compress all but the first icon.upx --compress-icons=1 yourfile.exe
--compress-icons=2Compress all icons which are not in the first icon directory.[DEFAULT]upx yourfile.exe

こんなもんです。無理やり圧縮とか他にもありますが、そこまでして圧縮したい場合はUPXを直叩きするということで。っていうかバックアップとかいりますか?エクスポートセクション圧縮とかアイコン圧縮の調整とかいりますか?いや。いらないです。

以上から、圧縮レベルを 1 - 9 で切り替えられること。 --best 圧縮できること。解凍・表示を行うこと。に絞りました。少なくなってヨカッタヨカッタ。いや、うーん。そうですねぇ。エクスポート圧縮もアイコン圧縮も、デフォルトか圧縮しないかを選択できてもよいかもしれないですねぇ。

これをサポートしよう!TOP

スイッチ内容コマンド例
無指定簡単なヘルプupx
-Vバージョン表示upx -V
-Lライセンス表示upx -L
-d解凍upx -d yourfile.exe
無指定
-1
..
-9
お任せ圧縮
レベル指定圧縮
upx -1 yourfile.exe
--bestリリース用圧縮3段階なので省略
-kバックアップするupx -k yourfile.exe
--compress-exports=0エクスポートセクションを圧縮しないupx --compress-exports=0 yourfile.exe
--compress-icons=0アイコンを圧縮しないupx --compress-icons=0 yourfile.exe

以上に決まりました。表示/解凍/圧縮を同列で並べてるおかしな表ですが、表示系が3種。解凍系が1種。圧縮系が5種の組み合わせ(でもないか..)。

EOFTOP