0

C#でいくつかのネイティブクラスを使用するために、C ++/CLIでラッパーdllを作成しようとしています。

テストのために、dllを使用する別のC ++/CLIプロジェクトを作成しました。

私の問題は、テストプロジェクトのdllプロジェクトでネイティブクラスの1つを使用したいのですが、リンカーがこのクラスメンバーのシンボルが見つからないと文句を言います。ネイティブクラスが定義されていないためだと思いref publicます。ネイティブクラスコードはGoogleProtobuffersコンパイラによって自動生成されるため、追加できませんref public

誤解しないでください。将来のc#プロジェクトでこのネイティブクラスを使用したくありませんが、テストプロジェクトで直接アクセスしたいと思います。

4

1 に答える 1

0

これを行うには、一般的なネイティブC ++の方法に従う必要があると思います。dllからクラスをエクスポートし、テストプロジェクトからdllにリンクしてから、クラスを使用する必要があるテストプロジェクトからヘッダーファイルを#includeします。

ネイティブクラスを参照して使用するための「管理された方法」はないと思います(私が間違っている場合は、他の人が私を修正してくれることを願っています)。

于 2012-06-28T14:07:37.227 に答える