1

.Net フレームワークをバンドルせずにアプリケーションを出荷するという奇妙な要件があります (メモリのフットプリントと帯域幅を節約するため)。

これは可能ですか?お客様のシステムに .Net ランタイムがインストールされている場合とされていない場合があります。

Ngen を実行すると、この問題は解決しますか? 私は、C++ アプリをリリースする古き良き方法のようなものを探していました (リンカーを使用して、必要なバイナリのみをリンクします)。

4

7 に答える 7

3

Ngen を使用しないオプションの 1 つは、.Net Framework 3.5 SP1 の「クライアント プロファイル」を使用してリリースすることです。これは、クライアント アプリケーションの構築に使用される .Net Framework のサブセットであり、個別のはるかに小さいパッケージとしてダウンロードできます。

詳細については、こちらのBCL チーム ブログとこちらScott Guthrieをご覧ください。

于 2008-09-22T04:58:57.917 に答える
3

このような状況での一般的な解決策は、Windows Update の一部になったらすぐに、顧客が適切なバージョンの .Net Framework を入手する必要があるという事実上の標準です。そのため、インストーラーは、クライアントのマシンで使用しているバージョンの .NET が利用可能かどうかを確認し、Microsoft からダウンロードすることを提案する必要があります。これにより、あなたの会社があなたのチャネルを通じて転送することを防ぎ、アプリケーションが正しいインフラストラクチャを持つようにします。

于 2008-09-22T05:02:12.543 に答える
2

サラマンダーはチェックしましたか?リモートソフト

于 2008-09-22T04:58:43.347 に答える
2

参考までに、

このトピックはすでに議論されています。残念ながら、現時点ではリンクを見つけることができません (検索を改善する必要があります)。


わかりました、同様の質問を見つけました:

.NET Framework の依存関係

まったく同じ質問があったことを思い出しますが、見つかりません:(

于 2008-09-22T05:00:45.667 に答える
0

ソフトウェアが .NET を必要とする場合、エンド ユーザーは同じバージョンの .NET を必要とします。MFC や Delphi のように、.NET を実行可能ファイルに「リンク」して単一の .exe を作成することはできません。インストーラーが .NET ランタイムをインストールしない場合は、ユーザーがそのことを認識していることを確認し、Microsoft から .NET をダウンロードするように指示する必要があります。

于 2008-09-22T04:57:03.883 に答える
0

「クライアント プロファイル」を使用できます。これは、デスクトップ アプリケーション用の .NET Framework のサブセットです。クライアント プロファイルのサイズは約 20 MB です

于 2008-09-22T05:01:04.963 に答える
0

VS で作成されたブートストラップ 'setup.exe' を含めることもできます。必要な .net バージョンがあるかどうかを検出し、ある場合はインストーラーを起動します。そうでない場合は、フレームワークをダウンロードするように求められます。

于 2008-09-22T05:06:48.040 に答える