一連のC++ヘッダーを取得し、XSDとC++からXMLにシリアライズするクラスを生成するツールはありますか?C++オブジェクトグラフからC#
私たちが探しているのは、データをC++からC#に移行する最も簡単な方法です。私たちはC++でGUIを書くためのライブラリを持っています。 Managedラッパークラスを使用すると、各クラスのラッパーを作成する必要があるようです。オートメーションが目標です。
一連のC++ヘッダーを取得し、XSDとC++からXMLにシリアライズするクラスを生成するツールはありますか?C++オブジェクトグラフからC#
私たちが探しているのは、データをC++からC#に移行する最も簡単な方法です。私たちはC++でGUIを書くためのライブラリを持っています。 Managedラッパークラスを使用すると、各クラスのラッパーを作成する必要があるようです。オートメーションが目標です。
これはC++の内容をシリアライズするのに適しています。
http://www.boost.org/doc/libs/1_38_0/libs/serialization/doc/index.html
可能な解決策...しかし、まだいくつかの作業が必要です!:
は、MicrosoftのVisual Studioを使用している場合は、あなたのC++コードを解析したCodeDOM(http://msdn.microsoft.com/en-us/library/y2k85ax6.aspx)を使用することができます。次に、T4テンプレートを使用してC#コード、またはC++オブジェクトをシリアライズするC++関数を書き出すことができます。
2008年版のVisual Studioをお持ちの場合は、T4を入手してください。 2005年には、追加のダウンロード。 (http://msdn.microsoft.com/en-us/library/bb126445.aspx)
あなたはprotocol buffer.proto
ファイルにC++ヘッダを変換する小さなスクリプトを書くことを検討しています。
この変換は比較的簡単です。次にC++とC#のプロトコルバッファの実装が存在するため、ほとんどのC#を生成し、変更したときにそれらを同期させて保存することができます。
これは、もし可能であれば、あなたのライブラリを/ clrでコンパイルして、C#から自明に使えるようにすると言っています。これは、ライブラリの他のコンシューマがもちろんCLRランタイムに依存できない場合は、不可能です。
XSD.exeと組み合わせて試してみます。 –