com wrapped c#dllを管理していないc ++からの呼び出し:「文字列」を渡して更新された値を取得する方法

StackOverflow https://stackoverflow.com/questions/3780069

質問

com interopを使用して、vc6 mfc dllからac#dllの関数を呼び出します。これは正常に機能します。
文字列値を取得するために関数を呼び出したい。
管理されていないC ++で「文字列」を宣言するにはどうすればよいですか?
「文字列」はC#コードにどのように表示されるべきですか?
現在、DLLのC#関数はREF文字列引数を取り、私のC#テストアプリは正常に機能しますが、管理されていないC ++コールから何を渡しますか?

これが理にかなっていることを願っています。どんな助けも歓迎します、ありがとう。

正しい解決策はありません

他のヒント

問題が解決しました。

VC6コードでBSTR変数を作成します。
bstr key = sysallocstring(null);
私は自分のC#アセンブリと呼びます:
プレゼンター - > getobject(&key);
私のC#関数は次のとおりです。
void getobject(ref string key);

:)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top