0

C++ コードから dll を作成し、C# で使用したいと考えています。C++ から COM オブジェクトを作成する解決策はありますか?
使いたくないSystem.Runtime.InteropServices

どうもありがとう

4

4 に答える 4

4

COM を直接記述できますが (@Darin Dimitrov の回答を参照)、 ATLを使用することもできます。C++ コードを C# に (COM なしで) 公開するための私のお気に入りのソリューションは、C++/CLIを使用することです。

于 2011-01-08T10:38:03.890 に答える
4

もちろん、C++ で COM+ オブジェクトを記述できます。ここにチュートリアルがあります。

于 2011-01-08T10:26:31.220 に答える
1

それについて行くには3つの方法があります。

1)C#からのPInvokeを使用して、ネイティブメソッドを呼び出します。

2)C ++-CLIを使用して、ネイティブ機能をC#に公開するレイヤーを作成します。これは、パフォーマンスに関して私の推奨するアプローチです。

3)C ++ dllをCOMオブジェクトとして記述し、C#からアクセスします。COMの知識が必要であり、したがって開発コストが必要です。

于 2012-07-29T03:48:57.320 に答える
0

ATL を使用できます。簡単すぎて、dll を登録するだけです。その後、すべてのC#プログラムで使用できます

于 2011-07-12T06:34:31.627 に答える