8

C#でGUIレイヤーを作成し、残りのアプリケーションをC ++で作成することも可能ですか?私が間違っていなければ、アンチウイルスソフトウェアの1つがDelphiでGUIを作成していました。どのようにそれを行うことができますか?

4

4 に答える 4

6

それを行うには、次のようないくつかのオプションがあります。

  1. P / Invokeを使用して、C#からC++DLLを呼び出します。
  2. ネイティブコードからCOMインターフェイスを公開し、COM相互運用機能を使用してC#から呼び出します。
  3. ネイティブWindowsサービスを作成し、マネージコードから呼び出します。
  4. C ++ / CLIを使用して、C#から簡単にリンクできるマネージドライブラリをC++で記述します。

ゼロから始める場合は、オプション4がおそらく最良のオプションです。(つまり、すべてをC#で記述することを除けば、最初の3つのオプションはすべて、追加のラングリングとオーバーヘッドを伴います。対話する必要があるなどのやむを得ない理由がない場合は、面倒なことをする価値はありません。既存のネイティブライブラリ、またはサービス指向アーキテクチャが必要な場合。

于 2012-05-25T21:58:39.400 に答える
4

ビジネスロジックをC++/ CLIで記述し、UIをC#で記述している場合、問題はありません。純粋なANSIC++で記述したい場合は、C#に公開したいオブジェクトの周りにC ++/CLIラッパーを記述しなければならない場合があります。

于 2012-05-25T21:42:42.703 に答える
3

アプリロジックをc++dllで記述し、c#のpinvokeを使用してdllと通信します。

于 2012-05-25T21:42:21.793 に答える
1

この回答を参照してください。それはあなたの問題に答えているようです

于 2012-05-25T21:44:01.997 に答える