0

C# で notepad++ のプラグインを作成しています。私のプラグインは、特定のテキスト ファイルの構造を表すツリーを作成します。(char* text) のようなパラメーターを使用して関数を呼び出す際に問題が発生します。この問題でmwを助けてもらえますか?

例えば

SCI_GETLINE(int line, char *text)
{
    string st="";
    Win32.SendMessage(curScintilla, SciMsg.SCI_GETLINE, (int)line, st);
}

raise を呼び出すそのような方法は、有効な文字列形式の例外ではありません。

4

1 に答える 1

2

引数に次のタグを付けます: [MarshalAs(UnmanagedType.LPStr)]. 問題は、バイト C スタイルのヌル終了文字列ではない文字列型で Unicode 文字列を渡していることです。

于 2012-12-09T20:34:45.480 に答える