Antwort des servers hinzugefügt

This commit is contained in:
BlubbFish 2010-05-19 07:34:41 +00:00
parent c613dfff9f
commit e5071d044c
2 changed files with 52 additions and 30 deletions

View File

@ -24,104 +24,104 @@ namespace NetMonitorClient
this.rep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 34523); this.rep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 34523);
} }
internal void setNetworkAuto(string adapter) internal bool setNetworkAuto(string adapter)
{ {
if (adapter == null) if (adapter == null)
{ {
System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); System.Windows.Forms.MessageBox.Show("Adapter ist not Set!");
return; return false;
} }
byte[] data = Encoding.UTF8.GetBytes("NET AUTO "+adapter); byte[] data = Encoding.UTF8.GetBytes("NET AUTO "+adapter);
this.client.Send(data, data.Length, this.rep); this.client.Send(data, data.Length, this.rep);
} }
internal void setNetworkIp(string ip, string subnet, string gateway, string adapter) internal bool setNetworkIp(string ip, string subnet, string gateway, string adapter)
{ {
if (ip == null) if (ip == null)
{ {
System.Windows.Forms.MessageBox.Show("IP address not Set!"); System.Windows.Forms.MessageBox.Show("IP address not Set!");
return; return false;
} }
if (subnet == null) if (subnet == null)
{ {
System.Windows.Forms.MessageBox.Show("Subnet address not Set!"); System.Windows.Forms.MessageBox.Show("Subnet address not Set!");
return; return false;
} }
if (gateway == null) if (gateway == null)
{ {
System.Windows.Forms.MessageBox.Show("Gateway address not Set!"); System.Windows.Forms.MessageBox.Show("Gateway address not Set!");
return; return false;
} }
if (adapter == null) if (adapter == null)
{ {
System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); System.Windows.Forms.MessageBox.Show("Adapter ist not Set!");
return; return false;
} }
byte[] data = Encoding.UTF8.GetBytes("NET IP " + ip + " " + subnet + " " + gateway + " " + adapter); byte[] data = Encoding.UTF8.GetBytes("NET IP " + ip + " " + subnet + " " + gateway + " " + adapter);
this.client.Send(data, data.Length, this.rep); this.client.Send(data, data.Length, this.rep);
} }
internal void setNetworkDNS(string dns, string adapter) internal bool setNetworkDNS(string dns, string adapter)
{ {
if (dns == null) if (dns == null)
{ {
System.Windows.Forms.MessageBox.Show("DNS address not Set!"); System.Windows.Forms.MessageBox.Show("DNS address not Set!");
return; return false;
} }
if (adapter == null) if (adapter == null)
{ {
System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); System.Windows.Forms.MessageBox.Show("Adapter ist not Set!");
return; return false;
} }
byte[] data = Encoding.UTF8.GetBytes("NET DNS " + dns + " " + adapter); byte[] data = Encoding.UTF8.GetBytes("NET DNS " + dns + " " + adapter);
this.client.Send(data, data.Length, this.rep); this.client.Send(data, data.Length, this.rep);
} }
internal void setNetworkWINS(string wins, string adapter) internal bool setNetworkWINS(string wins, string adapter)
{ {
if (wins == null) if (wins == null)
{ {
System.Windows.Forms.MessageBox.Show("WINS address not Set!"); System.Windows.Forms.MessageBox.Show("WINS address not Set!");
return; return false;
} }
if (adapter == null) if (adapter == null)
{ {
System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); System.Windows.Forms.MessageBox.Show("Adapter ist not Set!");
return; return false;
} }
byte[] data = Encoding.UTF8.GetBytes("NET WINS " + wins + " " + adapter); byte[] data = Encoding.UTF8.GetBytes("NET WINS " + wins + " " + adapter);
this.client.Send(data, data.Length, this.rep); this.client.Send(data, data.Length, this.rep);
} }
internal void setNetworkIpAuto(string adapter) internal bool setNetworkIpAuto(string adapter)
{ {
if (adapter == null) if (adapter == null)
{ {
System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); System.Windows.Forms.MessageBox.Show("Adapter ist not Set!");
return; return false;
} }
byte[] data = Encoding.UTF8.GetBytes("NET IP AUTO "+adapter); byte[] data = Encoding.UTF8.GetBytes("NET IP AUTO "+adapter);
this.client.Send(data, data.Length, this.rep); this.client.Send(data, data.Length, this.rep);
} }
internal void setNetworkDnsAuto(string adapter) internal bool setNetworkDnsAuto(string adapter)
{ {
if (adapter == null) if (adapter == null)
{ {
System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); System.Windows.Forms.MessageBox.Show("Adapter ist not Set!");
return; return false;
} }
byte[] data = Encoding.UTF8.GetBytes("NET DNS AUTO " + adapter); byte[] data = Encoding.UTF8.GetBytes("NET DNS AUTO " + adapter);
this.client.Send(data, data.Length, this.rep); this.client.Send(data, data.Length, this.rep);
} }
internal void setNetworkWinsAuto(string adapter) internal bool setNetworkWinsAuto(string adapter)
{ {
if (adapter == null) if (adapter == null)
{ {
System.Windows.Forms.MessageBox.Show("Adapter ist not Set!"); System.Windows.Forms.MessageBox.Show("Adapter ist not Set!");
return; return false;
} }
byte[] data = Encoding.UTF8.GetBytes("NET WINS AUTO " + adapter); byte[] data = Encoding.UTF8.GetBytes("NET WINS AUTO " + adapter);
this.client.Send(data, data.Length, this.rep); this.client.Send(data, data.Length, this.rep);

View File

@ -2,12 +2,17 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Diagnostics; using System.Diagnostics;
using System.Net;
using System.Net.Sockets;
namespace NetMonitorServer namespace NetMonitorServer
{ {
class SetNetworks class SetNetworks
{ {
UdpClient sendanswer = new UdpClient();
IPEndPoint rep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 34524);
public SetNetworks(string data) public SetNetworks(string data)
{ {
if (data.Substring(0, 8).ToLower() == "net auto") if (data.Substring(0, 8).ToLower() == "net auto")
@ -25,10 +30,13 @@ namespace NetMonitorServer
String[] par = data.Split(' '); String[] par = data.Split(' ');
if (par.Length != 4) if (par.Length != 4)
return; return;
bool ret;
if (par[2].ToLower() == "auto") if (par[2].ToLower() == "auto")
this.runProgramNetsh("interface ipv4 set winsservers name=\"" + par[3] + "\" source=dhcp"); ret = this.runProgramNetsh("interface ipv4 set winsservers name=\"" + par[3] + "\" source=dhcp");
else else
this.runProgramNetsh("interface ipv4 set winsservers \"" + par[3] + "\" static " + par[2]); ret = this.runProgramNetsh("interface ipv4 set winsservers \"" + par[3] + "\" static " + par[2]);
byte[] answ = Encoding.UTF8.GetBytes(ret.ToString());
sendanswer.Send(answ, answ.Length, rep);
} }
private void setNetworkDns(string data) private void setNetworkDns(string data)
@ -36,10 +44,13 @@ namespace NetMonitorServer
String[] par = data.Split(' '); String[] par = data.Split(' ');
if (par.Length != 4) if (par.Length != 4)
return; return;
bool ret;
if (par[2].ToLower() == "auto") if (par[2].ToLower() == "auto")
this.runProgramNetsh("interface ipv4 set dnsservers name=\"" + par[3] + "\" source=dhcp"); ret = this.runProgramNetsh("interface ipv4 set dnsservers name=\"" + par[3] + "\" source=dhcp");
else else
this.runProgramNetsh("interface ipv4 set dnsservers \"" + par[3] + "\" static " + par[2] + " primary"); ret = this.runProgramNetsh("interface ipv4 set dnsservers \"" + par[3] + "\" static " + par[2] + " primary");
byte[] answ = Encoding.UTF8.GetBytes(ret.ToString());
sendanswer.Send(answ, answ.Length, rep);
} }
private void setNetworkIp(string data) private void setNetworkIp(string data)
@ -47,10 +58,13 @@ namespace NetMonitorServer
String[] par = data.Split(' '); String[] par = data.Split(' ');
if (par.Length != 4 && par.Length != 6) if (par.Length != 4 && par.Length != 6)
return; return;
bool ret;
if (par[2].ToLower() == "auto") if (par[2].ToLower() == "auto")
this.runProgramNetsh("interface ipv4 set address name=\"" + par[3] + "\" source=dhcp"); ret = this.runProgramNetsh("interface ipv4 set address name=\"" + par[3] + "\" source=dhcp");
else else
this.runProgramNetsh("interface ipv4 set address \"" + par[5] + "\" static " + par[2] + " " + par[3] + " " + par[4]); ret = this.runProgramNetsh("interface ipv4 set address \"" + par[5] + "\" static " + par[2] + " " + par[3] + " " + par[4]);
byte[] answ = Encoding.UTF8.GetBytes(ret.ToString());
sendanswer.Send(answ, answ.Length, rep);
} }
private void setNetworkAuto(string data) private void setNetworkAuto(string data)
@ -58,12 +72,17 @@ namespace NetMonitorServer
String[] par = data.Split(' '); String[] par = data.Split(' ');
if (par.Length != 3) if (par.Length != 3)
return; return;
this.runProgramNetsh("interface ipv4 set address name=\""+par[2]+"\" source=dhcp"); byte[] answ;
this.runProgramNetsh("interface ipv4 set dnsservers name=\"" + par[2] + "\" source=dhcp"); if (this.runProgramNetsh("interface ipv4 set address name=\"" + par[2] + "\" source=dhcp") &&
this.runProgramNetsh("interface ipv4 set winsservers name=\"" + par[2] + "\" source=dhcp"); this.runProgramNetsh("interface ipv4 set dnsservers name=\"" + par[2] + "\" source=dhcp") &&
this.runProgramNetsh("interface ipv4 set winsservers name=\"" + par[2] + "\" source=dhcp"))
answ = Encoding.UTF8.GetBytes(true.ToString());
else
answ = Encoding.UTF8.GetBytes(false.ToString());
sendanswer.Send(answ, answ.Length, rep);
} }
private void runProgramNetsh(string args) private bool runProgramNetsh(string args)
{ {
Process p = new Process(); Process p = new Process();
p.StartInfo.Arguments = args; p.StartInfo.Arguments = args;
@ -75,6 +94,9 @@ namespace NetMonitorServer
string output = p.StandardOutput.ReadToEnd(); string output = p.StandardOutput.ReadToEnd();
p.WaitForExit(); p.WaitForExit();
Console.WriteLine(output.Trim()); Console.WriteLine(output.Trim());
if (p.ExitCode == 0)
return true;
return false;
} }
} }
} }