using System; using System.Net.NetworkInformation; class MainClass { public static void Main(string[] args) { using (Ping ping = new Ping()) { Console.WriteLine("Pinging:"); foreach (string comp in args) { try { Console.Write(" {0}...", comp); PingReply reply = ping.Send(comp, 100); if (reply.Status == IPStatus.Success) { Console.WriteLine("Success - IP Address:{0}", reply.Address, reply.RoundtripTime); } else { Console.WriteLine(reply.Status); } } catch (Exception ex) { Console.WriteLine("Error ({0})", ex.InnerException.Message); } } } } }
implements a NetworkStream client 2
/*
Mastering Visual C# .NET
by Jason Price, Mike Gunderloy
Publisher: Sybex;
ISBN: 0782129110
*/
/*
Example15_12b.cs implements a NetworkStream client
*/
using System;
using System.IO;
using System.Net.Sockets ;
public class Example15_12b
{
public static void Main()
{
// create a client socket
TcpClient newSocket = new TcpClient(“localhost”, 50001);
// create a NetworkStream to read from the host
NetworkStream ns = newSocket.GetStream();
// fill a byte array from the stream
byte[] buf = new byte[100];
ns.Read(buf, 0, 100);
// convert to a char array and print
char[] buf2 = new char[100];
for(int i=0;i<100;i++)
buf2[i]=(char)buf[i];
Console.WriteLine(buf2);
// clean up
ns.Close();
newSocket.Close();
}
}
[/csharp]
implements a NetworkStream server
/* Mastering Visual C# .NET by Jason Price, Mike Gunderloy Publisher: Sybex; ISBN: 0782129110 */ /* Example15_12a.cs implements a NetworkStream server */ using System; using System.IO; using System.Net.Sockets ; public class Example15_12a { // Listen waits for connections private void Listen() { // listen on port 50001 TcpListener tcpl = new TcpListener(50001); tcpl.Start(); // wait for clients for (;;) { // Block here waiting for client connections Socket newSocket = tcpl.AcceptSocket(); if (newSocket.Connected) { // create a NetworkStream on the socket NetworkStream ns = new NetworkStream(newSocket); // send some data byte[] buf = {(byte)'H', (byte)'e', (byte)'l', (byte)'l', (byte)'o', (byte)' ', (byte)'N', (byte)'e', (byte)'t'}; ns.Write(buf, 0, 9); // cleanup ns.Flush(); ns.Close(); } // clean up and quit newSocket.Close(); break; } } public static void Main() { // launch a listening thread Example15_12a listener = new Example15_12a(); listener.Listen(); } }
Write to a NetworkStream
using System; using System.IO; using System.Text; using System.Net; using System.Net.Sockets; class Program { static void Main(string[] args) { TcpClient client = new TcpClient(); IPHostEntry host = Dns.GetHostByName("www.google.com"); client.Connect(host.AddressList[0], 8000); NetworkStream clientStream = client.GetStream(); string request = "LIST"; byte[] requestBuffer = Encoding.ASCII.GetBytes(request); clientStream.Write(requestBuffer, 0, requestBuffer.Length); byte[] responseBuffer = new byte[256]; MemoryStream memStream = new MemoryStream(); int bytesRead = 0; do { bytesRead = clientStream.Read(responseBuffer, 0, 256); memStream.Write(responseBuffer, 0, bytesRead); } while (bytesRead > 0); } }
NetworkInterface: Speed
using System; using System.Net.NetworkInformation; class MainClass { static void Main() { if (NetworkInterface.GetIsNetworkAvailable()) { NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface ni in interfaces) { Console.WriteLine(" Speed: {0}", ni.Speed); } } else { Console.WriteLine("No network available."); } } }
NetworkInterface: NetworkInterfaceType
using System; using System.Net.NetworkInformation; class MainClass { static void Main() { if (NetworkInterface.GetIsNetworkAvailable()) { NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface ni in interfaces) { Console.WriteLine(" Type: {0}", ni.NetworkInterfaceType); } } else { Console.WriteLine("No network available."); } } }
NetworkInterface: Id
using System; using System.Net.NetworkInformation; class MainClass { static void Main() { if (NetworkInterface.GetIsNetworkAvailable()) { NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface ni in interfaces) { Console.WriteLine(" ID: {0}", ni.Id); } } else { Console.WriteLine("No network available."); } } }