古いマシンで特定の機能を動作させるために.NETFrameworkのどの部分をインストールする必要があるかを誰かが知っているかどうか疑問に思います。.NET Framework全体をインストールせずに、アプリケーションでそれらをインストールする方法はありますか?
5 に答える
.NET フレームワークのオープン ソース実装であるMonoを使用できます。Mono インストーラーは .NET インストーラーよりも小さいです。また、Mono は XP より古いバージョンの Windows で動作します。
Mono では、リンカーを使用して、必要な .NET フレームワークの小さなサブセットのみをアプリケーションにバンドルできます。
欠点は、Mono が .NET フレームワーク全体を実装していないことです。現時点では、バージョン 2.0 と 3.0 の一部とのみ互換性があります。とにかく、 MoMaと呼ばれるツールがあり、アプリケーションが Mono とどの程度互換性があるかを教えてくれます。
十分な時間やお金があれば、C#からネイティブコードを生成できます。これらを深く調査する必要はあまりありませんでしたが、XenocodeとSalamanderはどちらもネイティブコードを生成したり、FXをインストールせずに実行するためにフレームワークアセンブリをコードに静的にリンクしたりできます。
しかし、私はこれを軽く行うとは思いません...少なくともWindows 98を実行できないマシンは、マネージコードを記述したいものではありません。
これらの古いマシンは何歳ですか?.NET 2.0はWin98マシンにインストールできるようです。システム要件については、http://msdn.microsoft.com/en-us/library/aa480241.aspxを参照してください。
ええと、VMWare ThinApp(以前はThinstallと呼ばれていました)が役立つかもしれませんが、私はそれを自分で使用したことはなく、実際の.NETインストール以外で.NETアプリを実行することには多少注意が必要です。
フレームワークの一部のみを使用している場合は、完全なフレームワークよりも少なくともいくらか小さい.NET 3.5クライアントプロファイルに関心があるかもしれませんが、もちろん、必要なものがすべて含まれているとは限りません...
これが不可能であると私が知る限り、それらが機能するには、.NETFrameworkランタイムが完全にインストールされている必要があります。私の意見では、それをつなぎ合わせようとすることは、とにかく良い考えのようには思えません。