| ■14996 / ) |
Re[1]: 構造体配列のマーシャリングについて |
□投稿者/ myugaru (24回)-(2008/03/01(Sat) 02:20:40)
|
■No14988 (hanayama さん) に返信
IntPtrとか必要ありません。とりあえず答えを書いてしまいます。
わからなければ再度質問を投稿ください。
using System;
using System.Runtime.InteropServices;
namespace TestExe
{
static class Program
{
[DllImport("TestDll.dll")]
static extern int Test([In, Out]P_DATA[] pData);
struct P_DATA
{
public int Stat;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
public string Message;
}
[STAThread]
static void Main(string[] args)
{
P_DATA[] data = new P_DATA[2];
data[0].Stat = 0;
data[0].Message = "aiueo\0";
data[1].Stat = 1;
data[1].Message = "kakikukeko\0";
Test(data);
}
}
}
|
|