2009-04-28 14 views
6

フレームワーク全体をインストールする代わりに、セットアッププロジェクトと共に私のプログラムで使用される.Netフレームワークの特定のdllだけを含めるにはどうすればよいですか? .NETがインストールされていないだけ、それは特定のシステムをインストールしています。*あなたのために必要なDLLを.Netフレームワーク全体ではなく、必要なdllだけを含めることは可能ですか?

おかげ

+0

私が正しいとすれば、あなたのプログラムを動作させることができるかどうかを、あなたのPCに.NETフレームワークがインストールされているかどうか知りたいでしょうか? – Natrium

+0

すべてのステートメントは実行できません。正しくないですサードパーティのツールがあります...私のコメントを参照してください。そのうちの1つにリンクしています。 – Lucero

答えて

4

hereと記載されている.NETクライアントプロファイルをお勧めします。 Windows Presentation Foundation(WPF)、Windowsフォーム、Windows Communication Foundation(WCF)、およびClickOnceのサブセットを合理化して提供します。これにより、.NET Framework Client Profileを対象とするWPF、Windowsフォーム、WCF、およびコンソールアプリケーションの迅速な展開シナリオが可能になります。"

6

あなたは、サーバーへの.NETアプリケーションを展開するには、アプリケーションをしていますか?

私はあなたがこれをすることができないと確信しています。フレームワークには、GACの単なるDLL群だけではありません。 (例:CLR、レジストリエントリなど)。クライアントマシンにフレームワークをインストールする必要があります

4

私はそれができないと確信しています。 C#は管理されたコードなので、それをサポートするにはCLRとフレームワークが必要です。

バイナリにコンパイルされる他の言語とは異なり、.NETコードはMSIL(Microsoft Intermediate Language)にコンパイルされるため、ハードウェアによって直接実行することはできません。

1

私はSalamander toolsを知っていますが、それらを使用していません。自分のサイトから

:「サラマンダー.NETリンカ、ネイティブコンパイラとミニ配置ツール;展開.NET W/Oフレームワークは、」実行するためにあなたのpogramためには

2

番号、ターゲットマシンを持っている必要があります適切なバージョンの.Netフレームワークがインストールされています。 SDKをアプリケーションにバンドルする必要はありませんが、アプリケーションに適切な.Netフレームワークを再配布可能にする必要があります。

1

あなたは、アセンブリをリンクするXenocodeのようなツールを使用することができます。

無料のリンカーがありますが(マイクロソフトから、私が思う)、それは私の名前をエスケープします。

0

リフレクションを使用して、依存するアセンブリを識別し、それらを展開とリンクすることは可能です。私はJavaの土地で同様のテクニックを使用しました。

+0

ただし、ターゲットにはまだCLRがインストールされている必要がありますシステム。 –

1

これはできません。あなたは、ターゲットマシン上の適切な.Netフレームワークランタイムを確保しなければなりません。サードパーティライブラリ/アセンブリでは可能ですが、.NETランタイムでは不可能です。

3

.Net 3.5 SP1以降、.NET Framework Client Profileを使用するオプションがありました。これにより、一部のサポートされているシナリオで完全な.Netパッケージのサブセットを配布できます。インストーラを使用する必要があります。個々のアセンブリを配布するだけでは不十分です。利点は、パッケージのサイズと展開時間を大幅に短縮することです。

関連する問題