使用C#拷贝String到struct

使用 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/

Published At
Categories with Web编程
Tagged with
comments powered by Disqus