使用C#拷贝String到struct
By dgiljr
介绍
本文介绍使用C#拷贝String到struct 。
代码 using System; using System.Runtime.InteropServices; using System.Text; class Class1 { [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)] public struct MyStruct { [MarshalAs(UnmanagedType.ByValTStr, SizeConst=4)] public string fname; [MarshalAs(UnmanagedType.ByValTStr, SizeConst=4)] public string lname; [MarshalAs(UnmanagedType.ByValTStr, SizeConst=7)] public string phone; } public static void Main() { string buffer = "abcdefgh2223333"; IntPtr pBuf = Marshal.StringToBSTR(buffer); MyStruct ms = (MyStruct)Marshal.PtrToStructure(pBuf,typeof(MyStruct)); Console.WriteLine("fname is: {0}",ms.fname); Console.WriteLine("lname is: {0}",ms.lname); Console.WriteLine("phone is: {0}",ms.phone); } }
From :
http://www.codeproject.com/csharp/gil_structs.asp
[email protected]
http://home.ripway.com/2004-6/124912/ 
|