私は眠れぬ夜を過ごし、quickfix_net.dll と quickfix_net_messages.dll の 64 ビット バージョンを持つQUICKFIXを構築しようとしました。
私の C# フレームワークは 64 ビットで、通常提供されている QUICKFIX dll は 32 ビットなので、他に選択肢はありません (アプリを 32 ビットに戻すことはオプションではありません)。
VS_10 ソリューションがすぐにビルドされることを期待していましたが (かわいそうな素朴なバニー...)、多くの #include "xxxxxx.h" ステートメントで、多数の未検出のライブラリ エラー (ソース ファイル "xxxxxx.h" を開けません) があります。私が試した 2 つのプロジェクト ソースでこの動作が発生しました。私はどちらかというと .net 派で、自分でこれを修正できなかったので困惑しています。
元のプロジェクト ソースはここからダウンロードでき、私が最も興味を持っている 64 ビット フォークはここ
にあります。quickfix_vs10.sln を開いてクリーン コンパイルを行っていただける方がいらっしゃいましたら、少なくとも 2 時間はお時間をいただけると思います。仕事に戻る前に会社の地下室で寝ます。
編集 :
詳細なエラー:
- 認識できない #include "quickfix/foo" がたくさんあります > 全体のソリューションからすべての "quickfix/" プレフィックスを削除する必要があります
- 'FIX' : クラスまたは名前空間の名前ではありません (特に FieldMap.h 内)
- 型指定子がありません - int と見なされます。注: C++ は default-int -'QuickFix::FieldNotFound __gc &' をサポートしていません: 値または参照によって管理対象オブジェクトをスローまたはキャッチできません
私は何百ものそれぞれを持っています... :(
EDIT : EFFICIENT ANSWER
REAL .Net FIX エンジンが必要な場合は、VERSAFIXまたはQUICKFIX/Nを選択することをお勧めします。
どちらもネイティブ .Net およびオープン ソースであるため、x64 dll (または必要に応じて x86) としてコンパイルできます。
- QUICKFIX/N が登場したばかりで、非常に有望です。投稿から数か月後に出てきたのは残念です:(
- VERSAFIXの時点で、私の会社はそれを6か月間使用しており、これまでのところかなり満足しています. (プロジェクトの開始者であるラス・カリーは、技術的に堅実で反応が良いです。)