クライアントシステムに.NETFrameworkをインストールせずに、ペンドライブまたはUSBからC#.NET Windowsアプリケーション(.exe)を実行することは可能ですか?
もしそうなら、どうすればそれを機能させることができますか?
私は数年前にこの製品に出くわしました - Salamander .net Linker。
私はそれをテストしなかったので、実際に機能するかどうかはわかりませんが、あなたが望むことをすると主張しています. 同じことを主張する他のいくつかの製品に出くわしましたが、それらはすべて私のニーズに対してかなり高価だったため、それらをテストすることができませんでした.
コンピューターで C#.NET アプリケーションを実行するには、そのターゲット コンピューターに .NET フレームワークをインストールする必要があります。
現時点では、Windows XP SP3 以降の Windows バージョン (Windows Vista または Windows 7) を搭載したマシンには、.NET フレームワークがインストールされています。
いわゆる「.NETFrameworkクライアントプロファイル」を使用できます。これは、ClickOnceのインストールを通じて展開できるアセンブリの削減されたセットです。とにかくインストールが必要です。
.NET アプリケーションには、.NET Framework をインストールする必要があります。ただし、必要なすべての依存関係を含むデプロイ可能なパッケージを提供できる商用の「パッカー」がいくつかあります。これがサポートされるソリューションになるかどうかはわかりません。
いいえ、.NET は Windows API の上にあり、CLR やその他の依存関係を実行する必要があります。インストーラーは問題ではありません。exe がペン ドライブから実行されるか、デスクトップにコピーされるか、明示的にインストールされるかは問題ではありません。
別のプラットフォームでシェルを構築し、.NET サービス、wcf API を呼び出すことができます。
.NET ランタイムの必要性を回避しようとするサード パーティのハッキングのセキュリティと整合性に疑問を呈します。特に、クライアントのマシンでその製品を実行する予定がある場合。
VMware ThinApp を使用できます。数年前、.Net アプリケーションに使用しました。