阅读背景:

C#自定义协议的封装与解析_你不认识的22的博客_c# 自定义协议

来源:互联网 

1、 定义结构体

internal class ReceiveMsgInfo
    {
        public int Magic;
        public int Version;
        public int Length;
        public short sequence;
        public short Cmd;
        public short PayLoad_length;
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 1024)]
        public byte[] PayLoad;

    public ReceiveMsgInfo()
    {
        PayLoad = new byte[1024];  //再次初始化数组大小
    }
}

/// <summary>
    /// 发送文字
    /// </summary>
    [StructLayout(LayoutKind.Sequential, Pack = 4)]
    public class TextMesInfo
    {
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
        public byte[] From;
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
        public byte[] To;
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
        public byte[] Datetime;
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 512)]
        public byte[] TextData;
    public TextMesInfo()
    {
        From = new byte[32];

        To = new byte[32];

        Datetime = new byte[32];

        TextData = new byte[512];
    }
}
internal class ReceiveMsgInfo



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: