Пример #1
0
        //Arun Geo Thomas
        private void btnStartOperation_Click(object sender, EventArgs e)
        {
            if (File.Exists(logFileName))
            {
                File.Delete(logFileName);
            }

            try
            {
                serialPortManager = new SerialPortManager(cbCOMPortsSelector.SelectedItem.ToString());


                if (serialPortManager.Connect())
                {
                    lblSerialportMessages.Text = "Connected";
                    readSerialPortData         = true;
                    serialPortReadThread       = new Thread(new ThreadStart(BackendThreadExecute));
                    serialPortReadThread.Start();
                    cbCOMPortsSelector.Enabled = false;
                    btnStartOperation.Enabled  = false;
                    JSTimer.Start();
                }
                else
                {
                    lblSerialportMessages.Text = "Already Connected";
                }
            }
            catch (Exception ex)
            {
                lblSerialportMessages.Text = "Error Cant Connect: " + ex.Message;
            }
        }
Пример #2
0
        static void Main()
        {
            SerialPortManager serialPortManager = new SerialPortManager(CommunicationMode.Server);

            serialPortManager.Log += (sender, eventArgs) => Console.WriteLine(eventArgs.Message);

            serialPortManager.Connect();

            ManualResetEventSlim exitEvent = new ManualResetEventSlim(false);

            Console.CancelKeyPress += (sender, args) => exitEvent.Set();

            while (!exitEvent.IsSet)
            {
                Console.WriteLine("Waiting for message");

                serialPortManager.ReceiveMessage();

                Console.WriteLine("Message received with type " + OperationContext.Request.Message.MessageType);

                switch (OperationContext.Request.Message.MessageType)
                {
                case MessageType.ListFilesRequest:
                    HandleListFilesRequest(serialPortManager);
                    break;

                case MessageType.SendFileRequest:
                    HandleSendFileRequest(serialPortManager);
                    break;

                case MessageType.ReceiveFileRequest:
                    HandleReceiveFileRequest(serialPortManager);
                    break;

                default:
                    throw new NotImplementedException(
                              "No handler for message type " + OperationContext.Request.Message.MessageType);
                }
            }
        }