using System; using System.CodeDom; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Drawing; using System.IO; using System.Linq; using System.Reflection; using System.Runtime.InteropServices; using System.Runtime.Remoting.Messaging; using System.Text; using System.Threading.Tasks; using SystemX.Common.Archive; using SystemX.Common.Serialization; using SystemX.Net.BaseProtocol; using static SystemX.Net.Platform.Common.Util.LogMessage; namespace SystemX.Common { public static partial class XCommons { public static byte[] SpecialObjectToByteStream(BASE_PROTOCOL SET_PROTOCOL, object refObj) { byte[] ucGetStreamBytes = new byte[1]; try { try { int iSize = Marshal.SizeOf(refObj); byte[] SendBuffer = SystemXNetSerialization.RawSerialize(refObj, Marshal.SizeOf(refObj)); var memoryStream = new MemoryStream(SendBuffer); byte[] getSendCompressFileByte = new byte[1]; getSendCompressFileByte = XDataArchive.CompressDeflateByteToByte(SendBuffer); iSize = getSendCompressFileByte.Count(); HEADER_PACKET setHeader = new HEADER_PACKET(); int iHeaderSize = Marshal.SizeOf(setHeader); byte[] ucHeaderMake = new byte[iHeaderSize]; setHeader = (HEADER_PACKET)SystemXNetSerialization.RawDeSerialize(ucHeaderMake, setHeader.GetType()); iHeaderSize = Marshal.SizeOf(setHeader); setHeader.usCommand = SET_PROTOCOL.COMMAND; setHeader.usSubCommand = SET_PROTOCOL.SUB_COMMAND; setHeader.uiOptionCommand = SET_PROTOCOL.OPTION_COMMAND; setHeader.uiHeaderLength = (uint)iHeaderSize; setHeader.uiDataLength = (uint)iSize; setHeader.objOptionName[0].Data = "-"; setHeader.objOptionExtension[0].Data = "-"; setHeader.uiSourDataNum = 0; setHeader.uiDestDataNum = 0; byte[] SendHeadBuffer = SystemXNetSerialization.RawSerialize(setHeader, Marshal.SizeOf(setHeader)); object getPacket = SystemXNetSerialization.SelectPacket(setHeader.uiDataLength); if (getPacket == null) throw new Exception("SystemXNetSerialization.SelectPacket Failed."); int iBodySize = Marshal.SizeOf(getPacket); byte[] ucBodyArray = new byte[iBodySize]; getPacket = Convert.ChangeType(SystemXNetSerialization.RawDeSerialize(ucBodyArray, getPacket.GetType()), getPacket.GetType()); Array.Copy(getSendCompressFileByte, (byte[])getPacket.GetType().GetMethod("Data").Invoke(getPacket, null), getSendCompressFileByte.Count()); setHeader.uiBodyLength = (uint)iBodySize; setHeader.uiPacketLength = (uint)(iHeaderSize + iBodySize); byte[] SendBodyBuffer = SystemXNetSerialization.RawSerialize(getPacket, Marshal.SizeOf(getPacket)); ucGetStreamBytes = HeadTailMake(setHeader.uiPacketLength, SendHeadBuffer, SendBodyBuffer); //string strMessage = Encoding.Unicode.GetString(ucGetFileBytes, 0, ucGetFileBytes.Length) + "\r\n"; } catch (Exception e) { //throw new CommonPacketMarshalException("General packet marshalling failed.[SystemX.Common : SystemXNetCommons.UserObjectToByteStream]"); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"General packet marshalling failed.[SystemX.Common : SystemXNetCommons.UserObjectToByteStream]\r\n" + e.Message, ConsoleColor.Yellow, LogMessageLevel.DEBUG); } } finally { ;//Until unused } return ucGetStreamBytes; } public static byte[] SetSimpleResponsPacket(BASE_PROTOCOL SET_PROTOCOL, bool bState) { byte[] ucGetStreamBytes = new byte[1]; try { try { if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.SIMPLE_RESPONSE) { ;// } else if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.RAW_END) { ;// } else return null; var bytes = new byte[1]; HEADER_PACKET setHeader = new HEADER_PACKET(); int iHeaderSize = Marshal.SizeOf(setHeader); byte[] ucHeaderMake = new byte[iHeaderSize]; setHeader = (HEADER_PACKET)SystemXNetSerialization.RawDeSerialize(ucHeaderMake, setHeader.GetType()); iHeaderSize = Marshal.SizeOf(setHeader); setHeader.usCommand = SET_PROTOCOL.COMMAND; setHeader.usSubCommand = SET_PROTOCOL.SUB_COMMAND; setHeader.uiOptionCommand = SET_PROTOCOL.OPTION_COMMAND; setHeader.bResponsState = bState; setHeader.usHeader = 1; setHeader.uiHeaderLength = (uint)iHeaderSize; setHeader.uiDataLength = 512; setHeader.objOptionName[0].Data = "-"; setHeader.objOptionExtension[0].Data = "-"; setHeader.uiSourDataNum = 0; setHeader.uiDestDataNum = 0; object getPacket = SystemXNetSerialization.SelectPacket(512); if (getPacket == null) throw new Exception("SystemXNetSerialization.SelectPacket Failed."); int iBodySize = Marshal.SizeOf(getPacket); byte[] ucBodyArray = new byte[iBodySize]; getPacket = Convert.ChangeType(SystemXNetSerialization.RawDeSerialize(ucBodyArray, getPacket.GetType()), getPacket.GetType()); setHeader.uiBodyLength = (uint)iBodySize; setHeader.uiPacketLength = (uint)(iHeaderSize + iBodySize); byte[] SendHeadBuffer = SystemXNetSerialization.RawSerialize(setHeader, Marshal.SizeOf(setHeader)); byte[] SendBodyBuffer = SystemXNetSerialization.RawSerialize(getPacket, Marshal.SizeOf(getPacket)); ucGetStreamBytes = HeadTailMake(setHeader.uiPacketLength, SendHeadBuffer, SendBodyBuffer); //string strMessage = Encoding.Unicode.GetString(ucGetFileBytes, 0, ucGetFileBytes.Length) + "\r\n"; } catch (Exception e) { //throw new CommonPacketMarshalException("General packet marshalling failed.[SystemX.Common : SystemXNetCommons.SimpleObjectToByteStream]"); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"General packet marshalling failed.[SystemX.Common : SystemXNetCommons.SimpleObjectToByteStream]\r\n" + e.Message, ConsoleColor.Yellow, LogMessageLevel.DEBUG); } } finally { ;//Until unused } return ucGetStreamBytes; } public static byte[] ObjectToByteStream(BASE_PROTOCOL SET_PROTOCOL, object refObj, CP_PACKET? getCPPacket = null, ushort usPalletIndex = 0, int iRecordsAffected = 1, bool bHasRows = true, int iFieldCount = 1, params string[] strParameters) { byte[] ucGetStreamBytes = new byte[1]; try { try { string refObjGetPos = string.Empty; string strGetFileName = string.Empty; string strGetExtension = string.Empty; MemoryStream ms = null; // SqlDataReader sqlReader = null; DataSet ds = new DataSet(); DataTable dt = new DataTable(); bool bCheckPos = true; bool bResponsSetState = true; if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.FILE_TRANSFER) { if (refObj is MemoryStream) { ms = (MemoryStream)refObj; if (ms == null) { bCheckPos = false; //throw new Exception("MemoryStream not initialize.. " + refObjGetPos); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"MemoryStream not initialize." + refObjGetPos + " [SystemX.Common : SystemXNetCommons.ObjectToByteStream]", ConsoleColor.Yellow, LogMessageLevel.DEBUG); } } else { refObjGetPos = (string)refObj; if (File.Exists(@refObjGetPos) == false) { bCheckPos = false; //throw new Exception("The file cannot be found. " + refObjGetPos); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"The file cannot be found." + refObjGetPos + " [SystemX.Common : SystemXNetCommons.ObjectToByteStream]", ConsoleColor.Yellow, LogMessageLevel.DEBUG); } else { strGetFileName = Path.GetFileNameWithoutExtension(@refObjGetPos); strGetExtension = Path.GetExtension(@refObjGetPos); } } } else if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.DATASET_TRANSEFER) { if (refObj is SqlDataReader) { sqlReader = (SqlDataReader)refObj; bResponsSetState = false; if (sqlReader != null) { if (sqlReader.RecordsAffected > 0) bResponsSetState = true; else if (sqlReader.HasRows == true) bResponsSetState = true; else if (sqlReader.FieldCount > 0) bResponsSetState = true; else bResponsSetState = false; dt.Load(sqlReader); ds.Tables.Add(dt); } } else if (refObj is DataTable) { dt = (DataTable)refObj; bResponsSetState = false; if (dt != null) { if (iRecordsAffected > 0) bResponsSetState = true; else if (bHasRows == true) bResponsSetState = true; else if (iFieldCount > 0) bResponsSetState = true; else bResponsSetState = false; ds.Tables.Add(dt); } } else if (refObj is DataSet) { ds = (DataSet)refObj; bResponsSetState = false; if (ds != null) { if (iRecordsAffected > 0) bResponsSetState = true; else if (bHasRows == true) bResponsSetState = true; else if (iFieldCount > 0) bResponsSetState = true; else bResponsSetState = false; } } else { ;// } } if (bCheckPos) { var bytes = new byte[1]; if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.FILE_TRANSFER) { if (ms != null) bytes = ms.ToArray(); else bytes = File.ReadAllBytes(@refObjGetPos); } else if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.DATASET_TRANSEFER) bytes = XDataArchive.CompressDatasetToByte(ds); var memoryStream = new MemoryStream(bytes); byte[] getSendOrgFileByte = memoryStream.ToArray(); byte[] getSendCompressFileByte = new byte[1]; if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.FILE_TRANSFER) getSendCompressFileByte = XDataArchive.CompressDeflateByteToByte(getSendOrgFileByte); else if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.DATASET_TRANSEFER) getSendCompressFileByte = memoryStream.ToArray(); HEADER_PACKET setHeader = new HEADER_PACKET(); int iHeaderSize = Marshal.SizeOf(setHeader); byte[] ucHeaderMake = new byte[iHeaderSize]; setHeader = (HEADER_PACKET)SystemXNetSerialization.RawDeSerialize(ucHeaderMake, setHeader.GetType()); iHeaderSize = Marshal.SizeOf(setHeader); //Various Parameter int nParamPos = 0; foreach (string strParam in strParameters) { switch (nParamPos) { case 0: setHeader.objVarParam1[0].Data = strParam; break; case 1: setHeader.objVarParam2[0].Data = strParam; break; case 2: setHeader.objVarParam3[0].Data = strParam; break; } nParamPos++; } setHeader.bResponsState = bResponsSetState; setHeader.usPalletIndex = usPalletIndex; setHeader.usCommand = SET_PROTOCOL.COMMAND; setHeader.usSubCommand = SET_PROTOCOL.SUB_COMMAND; setHeader.uiOptionCommand = SET_PROTOCOL.OPTION_COMMAND; setHeader.uiHeaderLength = (uint)iHeaderSize; setHeader.uiDataLength = (uint)getSendCompressFileByte.Count(); setHeader.objOptionName[0].Data = "-"; setHeader.objOptionExtension[0].Data = "-"; if (getCPPacket == null) { setHeader.objCP_Packet[0].objStationName[0].Data = "-"; setHeader.objCP_Packet[0].objProdNo_P[0].Data = "-"; setHeader.objCP_Packet[0].objProdNo_C[0].Data = "-"; setHeader.objCP_Packet[0].objTestType[0].Data = "-"; setHeader.objCP_Packet[0].objTestCode[0].Data = "-"; setHeader.objCP_Packet[0].objVersion[0].Data = "-"; setHeader.objCP_Packet[0].objProdCode[0].Data = "-"; setHeader.objCP_Packet[0].uiTestListNo = 0; } else { setHeader.objCP_Packet[0].objStationName[0].Data = getCPPacket.Value.objStationName[0].Data; setHeader.objCP_Packet[0].objProdNo_P[0].Data = getCPPacket.Value.objProdNo_P[0].Data; setHeader.objCP_Packet[0].objProdNo_C[0].Data = getCPPacket.Value.objProdNo_C[0].Data; setHeader.objCP_Packet[0].objTestType[0].Data = getCPPacket.Value.objTestType[0].Data; setHeader.objCP_Packet[0].objTestCode[0].Data = getCPPacket.Value.objTestCode[0].Data; setHeader.objCP_Packet[0].objVersion[0].Data = getCPPacket.Value.objVersion[0].Data; setHeader.objCP_Packet[0].objProdCode[0].Data = getCPPacket.Value.objProdCode[0].Data; setHeader.objCP_Packet[0].uiTestListNo = getCPPacket.Value.uiTestListNo; } if (SET_PROTOCOL.GET_CURRENT_PROTOCOL == BASE_PROTOCOL.PROTOCOL_CODE.FILE_TRANSFER) { if (strGetFileName != string.Empty) { setHeader.objOptionName[0].Data = strGetFileName; setHeader.objOptionExtension[0].Data = strGetExtension; } } setHeader.uiSourDataNum = 0; setHeader.uiDestDataNum = 0; object getPacket = SystemXNetSerialization.SelectPacket(setHeader.uiDataLength); if (getPacket == null) throw new Exception("SystemXNetSerialization.SelectPacket Failed."); int iBodySize = Marshal.SizeOf(getPacket); byte[] ucBodyArray = new byte[iBodySize]; getPacket = Convert.ChangeType(SystemXNetSerialization.RawDeSerialize(ucBodyArray, getPacket.GetType()), getPacket.GetType()); Array.Copy(getSendCompressFileByte, (byte[])getPacket.GetType().GetMethod("Data").Invoke(getPacket, null), getSendCompressFileByte.Count()); setHeader.uiBodyLength = (uint)iBodySize; setHeader.uiPacketLength = (uint)(iHeaderSize + iBodySize); byte[] SendHeadBuffer = SystemXNetSerialization.RawSerialize(setHeader, Marshal.SizeOf(setHeader)); byte[] SendBodyBuffer = SystemXNetSerialization.RawSerialize(getPacket, Marshal.SizeOf(getPacket)); ucGetStreamBytes = HeadTailMake(setHeader.uiPacketLength, SendHeadBuffer, SendBodyBuffer); //string strMessage = Encoding.Unicode.GetString(ucGetFileBytes, 0, ucGetFileBytes.Length) + "\r\n"; } } catch (Exception e) { //throw new CommonPacketMarshalException("General packet marshalling failed.[SystemX.Common : SystemXNetCommons.ObjectToByteStream]"); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"General packet marshalling failed.[SystemX.Common : SystemXNetCommons.ObjectToByteStream]\r\n" + e.Message, ConsoleColor.Yellow, LogMessageLevel.DEBUG); } } finally { ;//Until unused } return ucGetStreamBytes; } public static List ObjectToByteStreamList(BASE_PROTOCOL SET_PROTOCOL, object refObj, CP_PACKET? getCPPacket = null, ushort usPalletIdx = 0, params string[] strParameters) { List listStreamRawData = new List(); byte[] ucGetStreamBytes = new byte[1]; try { try { string refObjGetPos = string.Empty; string strGetFileName = string.Empty; string strGetExtension = string.Empty; bool bCheckPos = true; // 1 = File, 2 = DataSet int iSelectType = 0; if (refObj is string) { refObjGetPos = (string)refObj; if (File.Exists(@refObjGetPos) == false) { bCheckPos = false; //throw new Exception("The file cannot be found. " + refObjGetPos); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"The file cannot be found. " + refObjGetPos + " [SystemX.Common : SystemXNetCommons.ObjectToByteStreamList]", ConsoleColor.Yellow, LogMessageLevel.DEBUG); } else { strGetFileName = Path.GetFileNameWithoutExtension(@refObjGetPos); strGetExtension = Path.GetExtension(@refObjGetPos); iSelectType = 1; } } else if (refObj is DataSet) { strGetFileName = ""; strGetExtension = ""; iSelectType = 2; } else bCheckPos = false; if (bCheckPos) { var bytes = new byte[1]; switch (iSelectType) { case 1: bytes = File.ReadAllBytes(@refObjGetPos); break; case 2: bytes = XDataArchive.CompressDatasetToByte(refObj as DataSet); break; } /* try { Bitmap xBitmap = new Bitmap(@refObjGetPos); using (var stream = new MemoryStream()) { stream.Seek(0, SeekOrigin.Begin); xBitmap.Save(stream, xBitmap.RawFormat); bytes = stream.ToArray(); } //ImageConverter _imageConverter = new ImageConverter(); //bytes = (byte[])_imageConverter.ConvertTo(xBitmap, typeof(byte[])); } catch (Exception e) { bytes = File.ReadAllBytes(@refObjGetPos); } */ var memoryStream = new MemoryStream(bytes); //moryStream.Seek(0, SeekOrigin.Begin); //byte[] getSendOrgFileByte = memoryStream.ToArray(); //byte[] getSendCompressFileByte = new byte[1]; //getSendCompressFileByte = XNetArchive.CompressGZipByteToByte(getSendOrgFileByte); //getSendCompressFileByte = bytes; if (iSelectType == 1) { byte[] getSendCompressFileByte = XDataArchive.CompressGZipByteToByte(memoryStream.ToArray()); memoryStream = new MemoryStream(getSendCompressFileByte); } memoryStream.Seek(0, SeekOrigin.Begin); /* if (memoryStream.Length < SystemXNetSerialization.MAX_PACKET_SIZE) { //throw new Exception("The file use normal send mode. " + refObjGetPos); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"The file use normal send mode. " + refObjGetPos + " [SystemX.Common : SystemXNetCommons.ObjectToByteStreamList]", ConsoleColor.Yellow, LogMessageLevel.DEBUG); } */ int iFileSize = (int)memoryStream.Length; int iRemainSize = (int)memoryStream.Length; uint uiMakeCnt = (uint)(Math.Ceiling((double)((double)iFileSize / (double)SystemXNetSerialization.MAX_PACKET_SIZE))); int iSendPos = 0; for (uint i = 0; i < uiMakeCnt; i++) { byte[] ucSendData = null; if (iRemainSize >= SystemXNetSerialization.MAX_PACKET_SIZE) { ucSendData = new byte[SystemXNetSerialization.MAX_PACKET_SIZE]; int iRead = memoryStream.Read(ucSendData, 0, SystemXNetSerialization.MAX_PACKET_SIZE); //Array.Copy(getSendCompressFileByte, iSendPos, ucSendData, 0, SystemXNetSerialization.MAX_PACKET_SIZE); iSendPos += SystemXNetSerialization.MAX_PACKET_SIZE; iRemainSize -= SystemXNetSerialization.MAX_PACKET_SIZE; } else { ucSendData = new byte[iRemainSize]; int iRead = memoryStream.Read(ucSendData, 0, iRemainSize); //Array.Copy(getSendCompressFileByte, iSendPos, ucSendData, 0, iRemainSize); iSendPos += iRemainSize; iRemainSize -= iRemainSize; } HEADER_PACKET setHeader = new HEADER_PACKET(); int iHeaderSize = Marshal.SizeOf(setHeader); byte[] ucHeaderMake = new byte[iHeaderSize]; setHeader = (HEADER_PACKET)SystemXNetSerialization.RawDeSerialize(ucHeaderMake, setHeader.GetType()); iHeaderSize = Marshal.SizeOf(setHeader); //Various Parameter int nParamPos = 0; foreach (string strParam in strParameters) { switch (nParamPos) { case 0: setHeader.objVarParam1[0].Data = strParam; break; case 1: setHeader.objVarParam2[0].Data = strParam; break; case 2: setHeader.objVarParam3[0].Data = strParam; break; } nParamPos++; } if (iSelectType == 1) setHeader.usPalletIndex = usPalletIdx; else if (iSelectType == 2) setHeader.usPalletIndex = ushort.MaxValue; setHeader.usCommand = SET_PROTOCOL.COMMAND; setHeader.usSubCommand = SET_PROTOCOL.SUB_COMMAND; setHeader.uiOptionCommand = SET_PROTOCOL.OPTION_COMMAND; setHeader.uiHeaderLength = (uint)iHeaderSize; setHeader.uiDataLength = (uint)ucSendData.Count(); if (getCPPacket == null) { setHeader.objCP_Packet[0].objStationName[0].Data = "-"; setHeader.objCP_Packet[0].objProdNo_P[0].Data = "-"; setHeader.objCP_Packet[0].objProdNo_C[0].Data = "-"; setHeader.objCP_Packet[0].objTestType[0].Data = "-"; setHeader.objCP_Packet[0].objTestCode[0].Data = "-"; setHeader.objCP_Packet[0].objVersion[0].Data = "-"; setHeader.objCP_Packet[0].objProdCode[0].Data = "-"; setHeader.objCP_Packet[0].uiTestListNo = 0; } else { setHeader.objCP_Packet[0].objStationName[0].Data = getCPPacket.Value.objStationName[0].Data; setHeader.objCP_Packet[0].objProdNo_P[0].Data = getCPPacket.Value.objProdNo_P[0].Data; setHeader.objCP_Packet[0].objProdNo_C[0].Data = getCPPacket.Value.objProdNo_C[0].Data; setHeader.objCP_Packet[0].objTestType[0].Data = getCPPacket.Value.objTestType[0].Data; setHeader.objCP_Packet[0].objTestCode[0].Data = getCPPacket.Value.objTestCode[0].Data; setHeader.objCP_Packet[0].objVersion[0].Data = getCPPacket.Value.objVersion[0].Data; setHeader.objCP_Packet[0].objProdCode[0].Data = getCPPacket.Value.objProdCode[0].Data; setHeader.objCP_Packet[0].uiTestListNo = getCPPacket.Value.uiTestListNo; } setHeader.objOptionName[0].Data = strGetFileName; setHeader.objOptionExtension[0].Data = strGetExtension; setHeader.uiSourDataNum = i + 1; setHeader.uiDestDataNum = uiMakeCnt; object getPacket = SystemXNetSerialization.SelectPacket(setHeader.uiDataLength); if (getPacket == null) throw new Exception("SystemXNetSerialization.SelectPacket Failed."); int iBodySize = Marshal.SizeOf(getPacket); byte[] ucBodyArray = new byte[iBodySize]; getPacket = Convert.ChangeType(SystemXNetSerialization.RawDeSerialize(ucBodyArray, getPacket.GetType()), getPacket.GetType()); Array.Copy(ucSendData, (byte[])getPacket.GetType().GetMethod("Data").Invoke(getPacket, null), ucSendData.Count()); setHeader.uiBodyLength = (uint)iBodySize; setHeader.uiPacketLength = (uint)(iHeaderSize + iBodySize); byte[] SendHeadBuffer = SystemXNetSerialization.RawSerialize(setHeader, Marshal.SizeOf(setHeader)); byte[] SendBodyBuffer = SystemXNetSerialization.RawSerialize(getPacket, Marshal.SizeOf(getPacket)); ucGetStreamBytes = HeadTailMake(setHeader.uiPacketLength, SendHeadBuffer, SendBodyBuffer); listStreamRawData.Add(ucGetStreamBytes); } //string strMessage = Encoding.Unicode.GetString(ucGetFileBytes, 0, ucGetFileBytes.Length) + "\r\n"; } } catch (Exception e) { //throw new CommonPacketMarshalException("General packet marshalling failed.[SystemX.Common : COMMON.ObjectToByteStreamList]"); MessageOutput.ConsoleWrite(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss>>") + @"General packet marshalling failed.[SystemX.Common : COMMON.ObjectToByteStreamList]\r\n" + e.Message, ConsoleColor.Yellow, LogMessageLevel.DEBUG); } } finally { ;//Until unused } return listStreamRawData; } } }