?? noderegpackage.cs
字號:
using System;
using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
namespace MonitorSystem.BasicClass
{
/// <summary>
/// 監控節點注冊請求包
/// </summary>
[Serializable]
public class NodeRegPackage:SocketPackageBase
{
#region 監控節點注冊請求包體信息
//private string m_MonitorNodeID;
//private string m_MonitorNodeName;
//private string m_Remark;
private char[] m_MonitorNodeID = new char[4];
private char[] m_MonitorNodeName = new char[64];
private char[] m_MonitorRemark = new char[128];
private int m_Length = 196;
public char[] MonitorNodeID
{
get{return m_MonitorNodeID;}
set{m_MonitorNodeID = value;}
}
public char[] MonitorNodeName
{
get{return m_MonitorNodeName;}
set{m_MonitorNodeName = value;}
}
public char[] MonitorRemark
{
get{return m_MonitorRemark;}
set{m_MonitorRemark = value;}
}
public int Length
{
get{return m_Length;}
}
#endregion
/// <summary>
/// 注冊請求解包
/// </summary>
/// <param name="package"></param>
/// <returns></returns>
public override int DecodeSocketPackage(byte[] package)
{
IFormatter formatter = new BinaryFormatter();
MemoryStream stream = new MemoryStream();
NodeRegPackage nodereg = new NodeRegPackage();
try
{
stream.Write(package,0,package.Length);
stream.Seek(0,SeekOrigin.Begin);
nodereg = (NodeRegPackage)formatter.Deserialize(stream);
this.m_HeadFlag = nodereg.m_HeadFlag;
this.m_ContentLength = nodereg.m_ContentLength;
this.m_CommandID = nodereg.m_CommandID;
this.m_PacketType = nodereg.m_PacketType;
this.m_Version = nodereg.m_Version;
this.m_Reserve = nodereg.m_Reserve;
this.m_MonitorNodeID = nodereg.m_MonitorNodeID;
this.m_MonitorNodeName = nodereg.m_MonitorNodeName;
this.m_MonitorRemark = nodereg.m_MonitorRemark;
stream.Close();
}
catch(Exception ex)
{
string msg = String.Format("信息反序列化錯誤,原因:{0}",ex.Message);
throw new Exception(msg);
}
return 0;
}
}
/// <summary>
/// 監控節點注冊應答包
/// </summary>
[Serializable]
public class NodeRegRespPackage:SocketPackageBase
{
#region 監控節點注冊應答包體信息
private int m_Result;
private char[] m_PlatformID = new char[4];
private char[] m_LogFtpPath = new char[256];
private char[] m_ConfigFtpPath = new char[256];
private char[] m_FtpLoginID = new char[64];
private char[] m_FtpLoginPwd = new char[64];
private char[] m_BodyReserve = new char[8];
public int Result
{
get{return m_Result;}
set{m_Result = value;}
}
public char[] PlatformID
{
get{return m_PlatformID;}
set{m_PlatformID = value;}
}
public char[] LogFtpPath
{
get{return m_LogFtpPath;}
set{m_LogFtpPath = value;}
}
public char[] ConfigFtpPath
{
get{return m_ConfigFtpPath;}
set{m_ConfigFtpPath = value;}
}
public char[] FtpLoginID
{
get{return m_FtpLoginID;}
set{m_FtpLoginID = value;}
}
public char[] FtpLoginPwd
{
get{return m_FtpLoginPwd;}
set{m_FtpLoginPwd = value;}
}
public char[] BodyReserve
{
get{return m_BodyReserve;}
set{m_BodyReserve = value;}
}
#endregion
/// <summary>
/// 注冊應答解包
/// </summary>
/// <param name="package"></param>
/// <returns></returns>
public override int DecodeSocketPackage(byte[] package)
{
IFormatter formatter = new BinaryFormatter();
MemoryStream stream = new MemoryStream();
NodeRegRespPackage nodereg_resp = new NodeRegRespPackage();
try
{
stream.Write(package,0,package.Length);
stream.Seek(0,SeekOrigin.Begin);
nodereg_resp = (NodeRegRespPackage)formatter.Deserialize(stream);
this.m_HeadFlag = nodereg_resp.m_HeadFlag;
this.m_ContentLength = nodereg_resp.m_ContentLength;
this.m_CommandID = nodereg_resp.m_CommandID;
this.m_PacketType = nodereg_resp.m_PacketType;
this.m_Version = nodereg_resp.m_Version;
this.m_Reserve = nodereg_resp.m_Reserve;
this.m_Result = nodereg_resp.m_Result;
this.m_PlatformID = nodereg_resp.m_PlatformID;
this.m_LogFtpPath = nodereg_resp.m_LogFtpPath;
this.m_ConfigFtpPath = nodereg_resp.m_ConfigFtpPath;
this.m_FtpLoginID = nodereg_resp.m_FtpLoginID;
this.m_FtpLoginPwd = nodereg_resp.m_FtpLoginPwd;
this.m_BodyReserve = nodereg_resp.m_BodyReserve;
stream.Close();
}
catch(Exception ex)
{
string msg = String.Format("信息反序列化錯誤,原因:{0}",ex.Message);
throw new Exception(msg);
}
return 0;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -