c# Marshal使用

来源:互联网 发布:java 泛型类 编辑:程序博客网 时间:2024/05/29 10:09
int nSizeOfPerson = Marshal.SizeOf(person);IntPtr intPtr = Marshal.AllocHGlobal(nSizeOfPerson);// 通过函数对intPtr的地址空间写入数据         ...............//将数据从托管对象封送到非托管内存块,该内存块开始地址为intPtrMarshal.StructureToPtr(person, intPtr, true);//将数据从非托管内存块封送到新分配的指定类型的托管对象anotherPerson(指针还原到对象)PERSON anotherPerson = (PERSON)Marshal.PtrToStructure(intPtr, typeof(PERSON));

代码引用于 http://blog.csdn.net/livelylittlefish/article/details/2423764

0 0
原创粉丝点击