.NET 3.5 再頒布可能ファイル — 200 MB?その他のオプション?
-
08-06-2019 - |
質問
最近、私は自分の仕事で .NET 3.5 の新機能をたくさん使用しています。私が構築しているアプリケーションは、おそらく最新バージョンを持たない消費者に配布することを目的としています (あるいはおそらく最新バージョンを持っていない可能性があります)。 任意のバージョン) の .NET Framework をマシン上にインストールします。
行きに行きました .NET 3.5 再頒布可能パッケージをダウンロードする それはもうすぐだということを知るだけです 200MB! 私のアプリケーションでは、これは受け入れられません。なぜなら、このアプリケーションは、迅速にインストールされ、ユーザーのマシン上で目立たないコンシューマ アプリケーションであるはずだからです。.NET 3.5 がすでにインストールされているユーザーの場合、これまでのところ、バイナリのダウンロードは瞬時に行われています。この 200 MB のゴリラにより、ダウンロード サイズは 4 倍以上になります。この再頒布可能パッケージ以外に、ユーザーを「迅速で苦痛のない」ワークフローから排除しないフレームワークがマシン上にあることを確認するために使用できるオプションはありますか?ダウンロードの開始からインストールの完了までの目標時間は 2 分未満です。まだ .NET をインストールしていない人には不可能なのでしょうか?
解決
それが、私が可能な限り .net 2.0 を今でもターゲットにしている悲しい理由の 1 つです :/
ただし、必ずしも 200 MB パッケージ全体を必要とするわけではありません。必要なコンポーネントのみをダウンロードする 3 MB のブートストラップがあります。
ただし、最悪のシナリオでも、かなりの量のダウンロードが必要になります。また、を参照してください。 この記事 サイズに関する詳細な説明と、サイズの問題に対する別の回避策については、こちらをご覧ください。
追加:この質問に答えて以来、スコット・ハンセルマンは SmallestDotNet.com, これにより、必要なダウンロードの最小サイズが決まります。最悪のシナリオは変わりませんが、知っておくと役に立ちます。
他のヒント
.NET Framework 3.5 SP1 がリリースされると (かなり間もなくリリースされるはずです)、フレームワークの 2 番目のオプションである「クライアント プロファイル」が登場します。これは、メモリの重量が約 30 MB のみの削減されたフレームワークです。完全なフレームワークのすべての名前空間とクラスが含まれているわけではありませんが、理論上はほとんどの一般的なアプリには十分です。必要に応じて、完全なフレームワークにアップグレードできます (例:ソフトウェアの更新により新しい依存関係が導入された場合)
さらに詳しい情報は、こちらをご覧ください: BCLチームのブログ
.NET Framework クライアント プロファイルを確認しましたか?これは完全な再配布可能パッケージよりもはるかに小さく、スマート クライアントに必要な機能のみを提供するように最適化されています。
これでダウンロードが 2 分以内に収まるかどうかはわかりませんが、かなり短縮されるはずです。
.NET 4 ではクライアント プロファイルが改善されました (そして小さくなりました)。 を参照してください。
また、(何らかの形で) Service Pack のダウンロードも含める価値があります。実際、実行可能ファイルの構築方法によっては、フレームワークとサービス パックのインストールが強制される場合があります。
ちなみに、Microsoft SQL Server 2008 のインストールと今週のリリースとほぼ同時に RTM するには、.Net Framework 3.5 SP1 が必要です。まだインストールには手間がかかりますが、そこからクライアント プロファイルを抽出できます。ただ、方法はわかりません。