c# - COM for RPCをC++からC#に使用する

原文 c# c++ winapi com rpc

アンマネージC++からC#関数を呼び出して値を返すことができるクラスをC++で実装する必要があります。名前付きパイプでMIDL / RPCバインディングを使用してC++からC++にこれを実行しましたが、うまく機能しますが、サーバーアプリケーションはC#に移行しますが、クライアントはアンマネージC++のままにする必要があります(エクスプローラー拡張機能です)。

私はさまざまな方法を見てきましたが、多くの人がCOMを提案しています。COMはIPC / RPCではなく、クライアントアプリで提供されるオブジェクトをホストするためのものであると理解していました。これはCOMで可能になるのでしょうか。もしそうなら、誰かが私を良いリファレンスや例の方向に向けることはできますか?

編集:

明確にするために、クライアント(DLL)がエクスプローラーのプロセススペースに読み込まれているため、マネージコードを使用できません。

私が達成しようとしているのは、ユーザーがファイルを右クリックすると、拡張機能が実行中のサービス(セッション0)にファイルの詳細を要求することです。これは、以前はC++ <-> C++クライアント/サーバーでRPCを介して行われていました。現在、サーバーはC#にアップグレードされていますが、自分のオプションが何かはわかりません。 COMはオプションですか?

おかげで、
J
答え
混合CLRとネイティブC++ DLLを使用します。 MSDNtoolsを確認します。

Native and .NET Interoperability
関連記事

c# - 参照自体のコピーを作成しますか?

c# - 組み込みMySQLサーバーC#ラッパー?

c# - aspx.csファイルからユーザーコントロールのradiobuttonlistにアクセスする方法

c# - C#ProcessStartInfoでのprivoxyの実行

c# - NUnitからFacebook C#SDKを使用する

c# - Saxon XSLTがパラメーターを渡す

c# - エンティティフレームワークの複数テーブルクエリ

c# - データグリッドビューの最後にクリックされた行に移動する方法

c# - .NETでのネットワークファイルのコピー

c# - テキストボックスでのリストの使用