public byte[] GetMessage(AlohaTransactionType type, uint check, uint terminal, double amount) { HeaderMessage headerMessage = new HeaderMessage(); headerMessage.blberProtocol = 0x01; headerMessage.uTermId = terminal; headerMessage.MsgType = 0x01; headerMessage.uCRC = 678; SpyMessage spyMessage = new SpyMessage(); spyMessage.HeaderMsg = headerMessage; spyMessage.szTime = _time; spyMessage.nEmployeeId = 111222; spyMessage.szEmployeeName = _employee; spyMessage.nManagerId = 333444; spyMessage.szManagerName = _manager; spyMessage.nTableId = 555666; spyMessage.nCheckId = check; spyMessage.nTransactionType = (int) type; spyMessage.szDescription = _description; spyMessage.dAmount = amount; spyMessage.nQuantity = 5; int size = Marshal.SizeOf(spyMessage); byte[] bytes = new byte[size]; IntPtr ptr = Marshal.AllocHGlobal(size); Marshal.StructureToPtr(spyMessage, ptr, true); Marshal.Copy(ptr, bytes, 0, size); Marshal.FreeHGlobal(ptr); return bytes; }
private void write(AlohaTransactionType type) { try { using (TcpClient client = new TcpClient()) { client.Connect(_ipAddress, _port); using (NetworkStream ns = client.GetStream()) { uint terminal = uint.Parse(_channelCb.Text); uint check = uint.Parse(_checkTextbox.Text); byte[] bytes = _message.GetMessage(type, check, terminal); byte[] lengthBytes = BitConverter.GetBytes((uint) bytes.Length); ns.Write(lengthBytes, 0, lengthBytes.Length); ns.Write(bytes, 0, bytes.Length); } } } catch (Exception ex) { MessageBox.Show("Error Sending: " + ex); } }
public byte[] GetMessage(AlohaTransactionType type, uint check, uint terminal) { return GetMessage(type, check, terminal, 0.00D); }