static void Main(string[] args) { Console.WriteLine("Hello "); bool connected = false; RemoteInputOutputClient client = new RemoteInputOutputClient("192.168.2.101") { OnException = (ex) => { Console.WriteLine($"{ex.Message}"); }, OnConnectChanged = (b) => { connected = b; Console.WriteLine($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff")} / Connected:{b}"); }, OnInputReceived = (bs) => { Console.WriteLine($"{DateTime.Now.ToString("HH:mm:ss.fff")} / I:{string.Join(" ", bs)} / {connected}"); }, OnOutputReceived = (bs) => { Console.WriteLine($"{DateTime.Now.ToString("HH:mm:ss.fff")} / O:{string.Join(" ", bs)} / {connected}"); } }; client.Start(); client.BeginListener(); string cmd = null; do { cmd = Console.ReadLine(); if (cmd == null) { continue; } string[] str = cmd.Split(' '); if (str.Length != 2) { continue; } if (!ushort.TryParse(str[0], out ushort ch)) { continue; } client.SetOutput(ch, str[1] == "1" ? true : false); } while (cmd != "q"); client.EndListener(); client.Stop(); }
private void btnConnect_Click(object sender, EventArgs e) { try { if (client == null) { client = new RemoteInputOutputClient(this.tbHost.Text.Trim()) { OnException = (ex) => { Console.WriteLine($"{ex.Message}"); }, OnConnectChanged = (b) => { connected = b; Console.WriteLine($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff")} / Connected:{b}"); RemoteInputOutputConnectChangedHandler(b); }, OnInputReceived = (bs) => { Console.WriteLine($"{DateTime.Now.ToString("HH:mm:ss.fff")} / I:{string.Join(" ", bs)} / {connected}"); RemoteDiStatusHandler(bs); }, OnOutputReceived = (bs) => { Console.WriteLine($"{DateTime.Now.ToString("HH:mm:ss.fff")} / O:{string.Join(" ", bs)} / {connected}"); RemoteDoStatusHandler(bs); } }; } if (client.Running) { client.EndListener(); client.Stop(); } else { client.Start(); client.BeginListener(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }