Exemplo n.º 1
0
 private void sendToPrintPort(ObjPrinterSerialRawDataBuf _obj)
 {
     // 출력
     if (null != _obj && 0 < _obj.m_order_input_raw_data_len)
     {
         m_print_port.Write(_obj.m_order_input_raw_data_buf, 0, _obj.m_order_input_raw_data_len);                                  // send data
         printListenPortReceivedData(String.Format(">> recv data send to print port: {0} byte", _obj.m_order_input_raw_data_len)); // log
     }
 }
Exemplo n.º 2
0
        private void onDataReceivedListenPort(object sender, SerialDataReceivedEventArgs e)
        {
            this.Invoke(new MethodInvoker(delegate { printListenPortReceivedData("-------------------- recv start"); }));

            System.Array.Clear(m_listen_port_read_buf, 0, m_listen_port_read_buf.Length);
            m_listen_port_read_len = 0;

            int onetime_read_len = 0;

            while (m_listen_port.BytesToRead > 0)
            {
                onetime_read_len = ((m_listen_port_read_len + m_listen_port.BytesToRead) < m_listen_port_read_buf.Length ? m_listen_port.BytesToRead : (m_listen_port_read_buf.Length - m_listen_port_read_len));
                m_listen_port.Read(m_listen_port_read_buf, m_listen_port_read_len, onetime_read_len);
                m_listen_port_read_len += onetime_read_len;
            }

            //String read_msg_0 = System.Text.Encoding.ASCII.GetString(m_listen_port_read_buf);
            //String read_msg_1 = System.Text.Encoding.UTF8.GetString(m_listen_port_read_buf);
            //String read_msg_2 = System.Text.Encoding.Unicode.GetString(m_listen_port_read_buf);
            //String read_msg_3 = System.Text.Encoding.UTF32.GetString(m_listen_port_read_buf);
            String read_msg = System.Text.Encoding.Default.GetString(m_listen_port_read_buf); // 운영체제에 맞는 코드 페이지

            TsLog.writeLog(read_msg);

            // log
            this.Invoke(new MethodInvoker(delegate { printListenPortReceivedData("  >> read: " + m_listen_port_read_len.ToString()); }));
            this.Invoke(new MethodInvoker(delegate { printListenPortReceivedData("-------------------- recv end--"); }));

            //String read_data = m_listen_port.ReadExisting();
            //this.Invoke(new MethodInvoker(delegate { printListenPortReceivedData(read_data); }));

            if (0 < m_listen_port_read_len)
            {
                // request save
                ObjPrinterSerialRawDataBuf input_raw_data = new ObjPrinterSerialRawDataBuf();
                input_raw_data.setObj("test_input_type", m_listen_port_read_buf, 0, m_listen_port_read_len, "test_output_type");
                input_raw_data.requestSendRowData();

                // push to list
                lock (m_recv_raw_data_list_lock)
                {
                    m_recv_raw_data_list.Add(input_raw_data);
                }

                // button enable
                this.Invoke(new MethodInvoker(delegate { setFormControlEnable(true); }));
            }
        }