C# アプリケーションで C++ ライブラリを使用するために dll インポート + ラッピング (マネージ) を使用できることは知っていますが (質問リンク>> )、逆は何ですか? C++ アプリケーションで C# ライブラリを使用するにはどうすればよいですか? イベント/操作/結果は C# ライブラリで処理しますが、アプリケーションは C++ で作成しました。たとえば、これが私の C++ アプリケーションです。
//この例では; Manager は私の C# ライブラリのインスタンスになり、Log は何かを出力できる C# ライブラリの関数です。(これは単なる例であり、機能しません。私の質問を理解するために何かを説明するため)
int main()
{
if(MySystem.Start() == 0) //If there is no error
{
Manager.Log("System started successfully!"); //Post it to C# library!
}
return 0;
}
編集:ソリューションはネイティブ C++ である必要があります。C++\CLI は使用しません。
編集: C++ アプリケーションのみがネイティブになります。つまり、C# ライブラリを処理するための共有 C++ ライブラリを作成できます。C++アプリ(イベント) >> C++\CLI Lib. >> C# ライブラリ、この方法で可能です。例/トピック/出発点はありますか?
>> 私の解決策 (回答後、他の人に役立つはずです): C++\CLI 共有ライブラリを作成し、それをネイティブ C++ アプリで使用します。このライブラリは、私の C# ライブラリを処理します (この質問の詳細については>> )。C# が必要ない場合は、C++\CLI ライブラリをネイティブ ライブラリとして再コーディングします。それはかなり便利だと思います。