非常に長い文字列を持つ「const char* str」があります。cpp クライアントから、BSTR タイプを想定する .Net COM メソッドに渡す必要があります。現在私は使用しています:
CComBSTR bstr = str;
これには次の問題があります。
- この行がメモリ不足のメッセージで失敗することがあります
- bstr を COM クラスに渡すと、大量のメモリ (文字列サイズよりもはるかに多く) が必要になるため、メモリ不足で失敗する可能性があります。
質問:
- 賢明に CComBSTR に変換していますか? たとえば、ヒープなどを使用する方法はありますか
- 代わりに BSTR を使用する方が良いですか?
その他のご提案も大歓迎です...