using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ServiceProcess; using System.Net.Sockets; using System.Net; namespace NetMonitorClient { class ServiceControl { private UdpClient net_send; private IPEndPoint net_send_port; private UdpClient net_gets; private IPEndPoint net_gets_port; public ServiceControl(string name) { ServiceController sc = new ServiceController(); sc.ServiceName = name; //if (sc.Status != ServiceControllerStatus.Running) //{ // sc.Start(); //} this.net_send = new UdpClient(); this.net_send_port = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 34523); this.net_gets = new UdpClient(34524); this.net_gets_port = new IPEndPoint(IPAddress.Loopback, 0); } internal bool setNetworkAuto(string adapter) { if (adapter == null) { System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); return false; } byte[] data = Encoding.UTF8.GetBytes("NET AUTO "+adapter); this.net_send.Send(data, data.Length, this.net_send_port); return Boolean.Parse(Encoding.UTF8.GetString(net_gets.Receive(ref net_gets_port))); } internal bool setNetworkIp(string ip, string subnet, string gateway, string adapter) { if (ip == null) { System.Windows.Forms.MessageBox.Show("IP address not Set!"); return false; } if (subnet == null) { System.Windows.Forms.MessageBox.Show("Subnet address not Set!"); return false; } if (gateway == null) { System.Windows.Forms.MessageBox.Show("Gateway address not Set!"); return false; } if (adapter == null) { System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); return false; } byte[] data = Encoding.UTF8.GetBytes("NET IP " + ip + " " + subnet + " " + gateway + " " + adapter); this.net_send.Send(data, data.Length, this.net_send_port); return Boolean.Parse(Encoding.UTF8.GetString(net_gets.Receive(ref net_gets_port))); } internal bool setNetworkDNS(string dns, string adapter) { if (dns == null) { System.Windows.Forms.MessageBox.Show("DNS address not Set!"); return false; } if (adapter == null) { System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); return false; } byte[] data = Encoding.UTF8.GetBytes("NET DNS " + dns + " " + adapter); this.net_send.Send(data, data.Length, this.net_send_port); return Boolean.Parse(Encoding.UTF8.GetString(net_gets.Receive(ref net_gets_port))); } internal bool setNetworkWINS(string wins, string adapter) { if (wins == null) { System.Windows.Forms.MessageBox.Show("WINS address not Set!"); return false; } if (adapter == null) { System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); return false; } byte[] data = Encoding.UTF8.GetBytes("NET WINS " + wins + " " + adapter); this.net_send.Send(data, data.Length, this.net_send_port); return Boolean.Parse(Encoding.UTF8.GetString(net_gets.Receive(ref net_gets_port))); } internal bool setNetworkIpAuto(string adapter) { if (adapter == null) { System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); return false; } byte[] data = Encoding.UTF8.GetBytes("NET IP AUTO "+adapter); this.net_send.Send(data, data.Length, this.net_send_port); return Boolean.Parse(Encoding.UTF8.GetString(net_gets.Receive(ref net_gets_port))); } internal bool setNetworkDnsAuto(string adapter) { if (adapter == null) { System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); return false; } byte[] data = Encoding.UTF8.GetBytes("NET DNS AUTO " + adapter); this.net_send.Send(data, data.Length, this.net_send_port); return Boolean.Parse(Encoding.UTF8.GetString(net_gets.Receive(ref net_gets_port))); } internal bool setNetworkWinsAuto(string adapter) { if (adapter == null) { System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); return false; } byte[] data = Encoding.UTF8.GetBytes("NET WINS AUTO " + adapter); this.net_send.Send(data, data.Length, this.net_send_port); return Boolean.Parse(Encoding.UTF8.GetString(net_gets.Receive(ref net_gets_port))); } } }