5

.NET でデスクトップ アプリケーションを開発する場合、.NET Framework を必要としないことは可能ですか? .NET でソフトウェアを開発することは、デスクトップ アプリケーションを開発するための推奨される方法ですか? ソフトウェア企業がデスクトップ アプリケーションの開発に使用する最もよく使用されるプログラミング言語は何ですか?

.NET Framework の要件は、インストールした Windows OS に基づいて想定されているだけなので、Windows OS のバージョン要件が記載されているのはなぜですか?

4

15 に答える 15

10

C/C++ を使用して Windows デスクトップ用のアプリケーションを開発し、.NET フレームワークの要件をなくすことはできますが、必要なライブラリが既にシステムにあるか、インストールされていることを確認する必要があります。

.NET Framework の優れた点は、Windows XP SP2 および Vista には既定で 3.0 フレームワーク ランタイムがインストールされていることです。

多くの点で、これは Microsoft の「開発標準」であり、しばらくの間そのようになっています。これにより、多数のライブラリをアプリケーションに追加することを心配する必要がなくなります。.NET が提供するすべてのライブラリに固執している場合は、実行可能ファイルの展開について心配するだけで済みます。これは大きな頭痛の種です。デプロイしなければならないライブラリがたくさんある場合、更新を作成するときに手間がかかり始めます。これは、それらの更新が既存のインストーラーとそこにあるすべての既存のインストール済みアプリにプッシュされることを確認する必要があるためです。 .

「優先」に関しては、常に羽を波立たせる傾向がありますが、私がよく訪れる就職活動サイトでは、Web およびデスクトップ用の .NET 開発者がますます増えています。8^D

編集: フレームワークに関する私の混乱を指摘してくれた Orion に感謝します。XP SP2 または Vista を使用している場合は、すぐに 3.0 を取得できます。それ以外の場合は、単純なダウンロードまたは Windows Update の実行が必要になります。

于 2008-08-14T15:32:49.410 に答える
2

.Net フレームワークなしで .Net アプリを実行することはできません。フレームワークは、面倒なバックグラウンド タスクの一部を処理するため、フレームワークなしではアプリを実行できません。

于 2008-08-14T15:28:11.463 に答える
2

Windows プラットフォームでは、.NET を使用してデスクトップ アプリケーションを開発する方法が推奨されます。.NET の WinForms モデルは、従来のクライアント アプリまたはシック クライアント アプリを開発する 1 つの方法であり、.NET の Windows Presentation Foundation は、MS の最新のテクノロジの方向性です。

于 2008-08-14T15:30:17.123 に答える
1

Remotesoftはリンカーを提供します-単一の開発者ライセンスに対して1250ドル:http://www.remotesoft.com/linker/index.html

アプリケーションがMonoで実行される場合(そしてMonoのWinformデスクトップサポートは現在かなり良好です)、アプリを単一の実行可能ファイルであるMonoバンドルとしてパッケージ化できます。2つのオプションがあります。デフォルトにはランタイムが含まれていますが、静的にリンクされていません。もう1つは、Monoランタイムに静的にリンクしています。静的リンクを望まない理由は、アプリケーションがLGPLの下に置かれるためです。静的にリンクされていないバンドル(まだ単一のexeファイルのみ)には、その要件はありません。 http://www.mono-project.com/Mono:Runtime#Bundles

于 2008-08-14T23:31:35.327 に答える
1

「ClickOnceDeployment」の使用を検討してください。これにより、.Net 2.0、3.0、3.5の再配布可能なインストーラーをアプリケーションにブートストラップするのが非常に簡単になります。プロジェクトのプロパティのチェックボックスをクリックするだけで、インストーラーは前提条件のフレームワークがインストールされているかどうかを自動的に検出し、インストールされていない場合はインストールします。

それはすべての状況に適しているわけではありませんが、それを利用できればかなり滑らかになる可能性があります。

于 2008-08-15T08:11:31.893 に答える
1

私が言おうとしているのは、特定のソフトウェアのシステム要件を見ると、.NET Framework が要件であるとはめったに見られないということだと思います。だから、私はいつも、彼らがそれを必要とせずにどうやってやっていけるのか疑問に思っています (.NET でソフトウェアを開発した場合)。したがって、ほとんどの商用ソフトウェアは .NET で記述されていないと思います。そのため、この質問をしています。いくつかの問題が解決したことを願っています。

于 2008-08-14T15:33:04.467 に答える
1

Mono .NET への依存を絶対に避ける必要がある場合は、Windows リリースがあります。

ただし、どのように見ても、アプリケーションが実行されているコンピューターには .NET 互換のランタイムが必要になります。したがって、.NET を完全に回避したい場合は、アプリケーションと共に Mono ランタイムを配布する必要があります。

于 2008-08-14T15:40:03.657 に答える
1

.NET アプリケーション配布のベスト プラクティスは、必要なフレームワークの .NET 再頒布可能インストーラーを使用してインストーラーをブートストラップすることです。入れるだけ。

.NET ランタイムは十分に小さく、これを実行できるインストールです (.NET 2.0 の場合は約 24MB です。.NET 3.5 の大きさは確認していません)。

于 2008-08-14T15:44:38.577 に答える
1

私が言おうとしているのは、特定のソフトウェアのシステム要件を見ると、.NET Framework が要件であるとはめったに見られないということだと思います。だから、私はいつも、彼らがそれを必要とせずにどうやってやっていけるのか疑問に思っています (.NET でソフトウェアを開発した場合)。したがって、ほとんどの商用ソフトウェアは .NET で記述されていないと思います。そのため、この質問をしています。いくつかの問題が解決したことを願っています。

数字はわかりませんが、ほとんどの人がデスクトップで XP と Vista を実行しているので、特に 2.0 フレームワークをターゲットにしている場合、.NET フレームワークをリストすることは無意味だと思います。アプリケーション自体。昔、「vbrun50.dll が必要」などと書かれたアプリケーションが、デフォルトで Windows のインストールに組み込まれて以来、いくつ見られましたか?

さらに、コンピューターにそれほど詳しくない人にとっては、少し「怖く」ありません。彼らがやりたいことは、アプリをダウンロードしてインストールし、実行することだけです。私が持っているいくつかのアプリは 2.0 フレームワークを必要としますが、何人かの人々から、それが何であるか、どうすれば取得でき、費用はかかりますか?と尋ねられます。私が彼らに与える典型的な答えは、「XP または Vista を実行している場合、何も心配する必要はありません」であり、彼らはそれを気に入っているようです。

于 2008-08-14T16:01:14.737 に答える
1

.NET フレームワークを静的にリンクするようなことができたので、それを開発する必要がなかったとしたら、Microsoft が提供する EULA に違反していると思います。

これは、これほど豊富な開発者エクスペリエンスを得るために支払わなければならない代償です! MFC プログラミングに戻ることの難しさを考えると、それだけの価値があります。

于 2008-08-14T18:52:03.097 に答える
0

.NET Frameworkの良いところは、WindowsXPに2.0フレームワークランタイムライブラリがデフォルトでインストールされていることです。

いつから?多くのWindowsXPユーザーにインストールするように指示する必要がありました。はい、Windows Updateを使用してプルダウンできますが、これはオプションのインストールであり、自動的に行われるものではないと確信しています。

Vistaには3.5がインストールされています

いいえ、3.0がインストールされています。WPFは取得しますが、linqは取得しません

于 2008-08-14T23:06:40.620 に答える
0

はい、フレームワークを使用しなくても、ドット NET でビルドされたアプリケーションを構築できます。ESS dotNET FuZe のようなプログラムを使用して、フレームワーク dll を含む任意の dll をアプリケーションに組み込むことができます。結果として得られる EXE には、フレームワークはもう必要ありません。

このリンクに移動してください: http://essaver.net/fuze.html FuZe をご覧ください。

于 2014-02-19T21:31:54.330 に答える
0

私は .NET で (C# を使用して) プログラミングを行いましたが、多くの場合、多くのコントロールをより詳細に制御したいと思うことがあることに気付きました。これらには、.NET フレームワークを超えた知識が必要でした。

たとえば、WebBrowser コントロールを使用して Web アプリケーションの自動テスト ツールを作成していたとき、下位レベルの axWebBrowser ActiveX コントロールからのイベント ハンドラーが必要な特定の状況があることに気付きました。 COM 相互運用の概念。では、COM に関する知識があれば役に立つのではないでしょうか?

于 2008-08-14T18:20:57.187 に答える
0

私が言おうとしているのは、特定のソフトウェアのシステム要件を見ると、.NET Framework が要件であるとはめったに見られないということだと思います。だから、私はいつも、彼らがそれを必要とせずにどうやってやっていけるのか疑問に思っています (.NET でソフトウェアを開発した場合)。したがって、ほとんどの商用ソフトウェアは .NET で記述されていないと思います。そのため、この質問をしています。いくつかの問題が解決したことを願っています。

Windows デスクトップ用に C++/MFC で開発された多くのアプリケーションでは、要件として明示的に記載されていなくても、MFC ランタイム DLL の特定のバージョンが必要です。.NET を必要とするアプリケーションでも同じことが言えます。

たとえば、私が取り組んでいるアプリケーションには、必要な .NET と特定のバージョンの MFC の両方の再頒布可能ファイルと、その他の必要なコンポーネントが多数付属しています。当社のインストール プログラムは、現在ユーザーのシステムにインストールされていないコンポーネントをインストールします。過去数年間のすべてのリリースでは、以前のリリースよりも多くの .NET コードが使用されています。

.NET が要件としてリストされていないという理由だけで、ほとんどの商用ソフトウェアが .NET を使用していないと仮定するのは正確ではないと思います。そこから正確に何かを推測することはできないと思います。

于 2008-08-14T18:49:56.813 に答える
-1

.NET Framework を必要としないことも可能です。これを可能にするソリューションを (数千ドルで) 販売している会社もあります。ただし、これらは完全なハッキングであり、Microsoft によってサポートされていません。

デスクトップ アプリケーションの開発方法 (つまり、.NET を使用するかどうか) は、要件によって異なります。好ましい方法はありません。

最も使用されている言語はおそらく C# です。

于 2008-08-14T15:28:59.623 に答える