BT

.NETZ – .NETライブラリの圧縮とパッキング

| 作者: Jonathan Allen フォローする 608 人のフォロワー , 翻訳者 徳武 聡 フォローする 1 人のフォロワー 投稿日 2009年9月10日. 推定読書時間: 1 分 |

原文(投稿日:2009/09/08)へのリンク

.NETのランタイムは当初から、アセンブリの集合を基にしたパッキングを正式に備えていた。これは、管理の煩雑なスクリプトファイルやクラスファイルの集まりよりは遥かに便利だ。しかし、静的にリンクした実行可能ファイルやJARファイルと同じほど使いやすくはない。Vasian Cepa氏の .NETZを使えば、開発者は.NETのアセンブリを圧縮し単一の実行可能ファイルにパックすることができる。

デフォルトの設定では.NETZは、#ZipLibライブラリか.NET 2.0のIO.Compression.DeflateStreamクラスを使用して圧縮できる。必要なら新しい圧縮用プロバイダを作ることもできる。理論上は新しい圧縮用プロバイダに暗号化機能を搭載することもできるが、規定ではそのようなプロバイダは含まれていない。

.NETZには、制限事項もある。.NET 2.0のプロジェクトのローカライズリソースDLLはサポートされていない。.NET 1.0 や 1.1と違って、.NET 2.0のバージョンでは、動的にアセンブリを解凍するために必要なAssemblyResolveイベントとResourceResolveイベントが発生しない。しかし、これには回避策がある。

また、ネイティブなDLLやマネージドC++で作られたDLLはサポートしていない。 後者について言えば、サポートできないのは“マネージドC++ のコンパイラはPEファイルと中間言語のメタデータを最適化しているが、その最適化の方法が.NETの一般的なアセンブリ読み込みのメソッドでは解釈できないからだ。”

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT