|
分類:[C#]
2007/09/21(Fri) 18:29:01 編集(投稿者) 2007/09/21(Fri) 18:28:57 編集(投稿者)
こんにちわ。 DLL Import を使用して、文字列の受け渡しをしたいと思っています。 ソースはこんな感じです。
DLL側 extern "C" char PASCAL EXPORT DataRead(char *AllData[] , char *AllDataChar){ (中略) AllDataChar = "abcdef"; AllData[0] = "ghi"; AllData[1] = "jkl"; }
呼び出し側 [DllImport("TEST_DLL.dll")] private extern static int DataRead(System.Text.StringBuilder[] rtnChar, ref System.Text.StringBuilder rtnCharAll ); static void Main() { StringBuilder rtnCharAll = new StringBuilder(1024); StringBuilder[] rtnChar; rtnChar = new StringBuilder[1024]; int iRtn = DataRead(rtnChar, ref rtnCharAll,10000); }
しかし、この実行で、 rtnChar とrtnCharAll の中身はNULLの様なのですが、 何か抜けている処理、間違ってる記述等があるのでしょうか?
|