ピンボークコードを使用してC関数を呼び出そうとしています。この関数は、バッファーをデータで満たします。
構造は、長さのDWORDとして設定され、その後に文字列が続きます。IntPtrから文字列を抽出するにはどうすればよいですか?
IntPtr buffer = Marshal.AllocHGlobal(nRequiredSize);
PInvokedFunction(buffer, nRequiredSize);
string s = Marshal.PtrToStringAuto(buffer + 4); //this is an error.
Marshal.FreeHGlobal(buffer);