示例#1
0
        // Sends a line of text (adds a "\n" to end) to connected client and server
        public void SendLine(string v)
        {
            //Logger.Instance.Log4.Info($"Send: {v}");
            if (Client != null)
            {
                Client.Send(v + "\n");
            }
            else if (Server != null)
            {
                Server.Send(v + "\n");
            }

            if (SerialServer != null)
            {
                SerialServer.Send(v + "\n");
            }
        }
示例#2
0
 private void StartSerialServer()
 {
     if (_serialServer == null)
     {
         _serialServer = new SerialServer();
         _serialServer.Notifications += HandleSerialServerNotifications;
         _serialServer.Start(Settings.SerialServerPortName,
                             Settings.SerialServerBaudRate,
                             Settings.SerialServerParity,
                             Settings.SerialServerDataBits,
                             Settings.SerialServerStopBits,
                             Settings.SerialServerHandshake);
     }
     else
     {
         AddLogEntry("MCEC: Attempt to StartSerialServer() while an instance already exists!");
     }
 }
示例#3
0
 private void StartSerialServer()
 {
     if (SerialServer == null)
     {
         Logger.Instance.Log4.Info("Serial: Starting...");
         SerialServer = new SerialServer();
         SerialServer.Notifications += HandleSerialServerNotifications;
         SerialServer.Start(Settings.SerialServerPortName,
                            Settings.SerialServerBaudRate,
                            Settings.SerialServerParity,
                            Settings.SerialServerDataBits,
                            Settings.SerialServerStopBits,
                            Settings.SerialServerHandshake);
     }
     else
     {
         Logger.Instance.Log4.Info("Serial: Attempt to StartSerialServer() while an instance already exists!");
     }
 }
示例#4
0
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                // When the app exits we need to un-shift any modify keys that might
                // have been pressed or they'll still be stuck after exit
                Logger.Instance.Log4.Debug("Ensuring shift key modifiers are reset...");
                SendInputCommand.ShiftKey("shift", false);
                SendInputCommand.ShiftKey("ctrl", false);
                SendInputCommand.ShiftKey("alt", false);
                SendInputCommand.ShiftKey("lwin", false);
                SendInputCommand.ShiftKey("rwin", false);

                components?.Dispose();

                if (Server != null)
                {
                    // remove our notification handler
                    Server.Notifications -= serverSocketCallbackHandler;
                    Server.Dispose();
                }
                if (Client != null)
                {
                    // remove our notification handler
                    Client.Notifications -= clientSocketNotificationHandler;
                    Client.Dispose();
                }

                if (SerialServer != null)
                {
                    SerialServer.Notifications -= HandleSerialServerNotifications;
                    SerialServer.Dispose();
                }

                UpdateService.Instance.GotLatestVersion -= UpdateService_GotLatestVersion;
            }
            base.Dispose(disposing);
        }