9

.NET 2.0のみがインストールされているシステムでクラッシュする前に、.NET 3.5用にコンパイルされたソフトウェアはどのくらい進んでいますか?

私が開発しているアプリケーションはWPFを使用しており、.NET 3.5が必要ですが、ユーザーがインストールしていない場合は、(クラッシュするのではなく)使いやすいダイアログを表示したいと思います。

これを行うための標準的な方法、またはそれに関する公式のMicrosoftドキュメントはありますか?


編集:理想的な世界では、インストール中に.NETの依存関係が満たされていることを確認するだけです。一部のアプリケーションにはインストーラーがなく、ユーザーはアプリケーションのインストール後に.NETをアンインストールする可能性があるため、以下の回答が役立つと思います。

4

3 に答える 3

6

3.5を必要とするdllを使おうとするまで、(おそらく)クラッシュしません。実行中のアプリが3.5固有のdllを使用する前にバージョンを確認できる場合は、winformダイアログを表示でき、問題はありません。最も安全な方法は、exeを2.0アセンブリにし、3.5に対してコンパイルされた別のdllですべての3.5のものを作成することです。3.5アセンブリをロードする前に、2.0dllでチェックを行うことができます。

于 2009-10-05T14:46:04.747 に答える
3

.NET3.5は.NET2.0ランタイムを使用するため、アプリは完全に正常に起動します(ただし、3.5アセンブリを読み込もうとすると失敗します)。Environment.Versionをチェックして、実行している.NET 3.5であるかどうかを確認し、そうでMessageBox.Showない場合はユーザーに標準を提示できます。

于 2009-10-05T14:47:28.640 に答える
3

ClickOnce配置の使用を検討しましたか?エージェントは、.Netを含む、指定した前提条件項目をチェックしてインストールします。また、アプリケーションのアップグレードをプッシュするのもかなり簡単です。

于 2009-10-05T15:19:50.587 に答える