internal void TCPClientOpenCloseSocket() { if (TCPClientConnectFlag) { CloseTCPClientSocket(); return; } IPAddress _IPAddress; SocketBase _SocketBase = new SocketBase(); if (_SocketBase.TryParseIPAddressPort(TCPClientModel.IPAddrText, TCPClientModel.Port)) { _IPAddress = IPAddress.Parse(TCPClientModel.IPAddrText); if (!TCPClientModel.IPAddrItemsSource.Contains(_IPAddress)) { TCPClientModel.IPAddrItemsSource.Add(_IPAddress); } } else { DepictInfo = string.Format(cultureInfo, "请输入合法的IP地址和端口号"); return; } TCPClientInit(); TCPClientConnect(_IPAddress, TCPClientModel.Port); }
internal void TCPServerOpenSocket() { if (TCPServerStartFlag) { TCPServerCloseSocket(); return; } IPAddress _IPAddress; if (TCPServerModel.IPAddrSelectedIndex >= 0) { /* 索引选择的IP地址 */ _IPAddress = TCPServerModel.IPAddrItemsSource[TCPServerModel.IPAddrSelectedIndex]; } else { SocketBase _SocketBase = new SocketBase(); /* 手动输入的IP地址 */ if (_SocketBase.TryParseIPAddressPort(TCPServerModel.IPAddrText, TCPServerModel.Port)) { _IPAddress = IPAddress.Parse(TCPServerModel.IPAddrText); if (!TCPServerModel.IPAddrItemsSource.Contains(_IPAddress)) { TCPServerModel.IPAddrItemsSource.Add(_IPAddress); TCPServerModel.IPAddrInfoItemsSource.Add(_IPAddress.ToString()); } } else { DepictInfo = string.Format(cultureInfo, "请输入合法的IP地址和端口号"); return; } } TCPServerInit(); TCPServerStartFlag = TCPServerStart(_IPAddress, TCPServerModel.Port); if (TCPServerStartFlag) { TCPServerModel.IPAddrEnable = false; TCPServerModel.PortEnable = false; TCPServerModel.Brush = Brushes.GreenYellow; TCPServerModel.OpenClose = string.Format(cultureInfo, "TCP 断开"); } else { DepictInfo = string.Format(cultureInfo, "服务器启动失败"); return; } }