static void Connect(String server, String message) { try { // Create a TcpClient. // Note, for this client to work you need to have a TcpServer // connected to the same address as specified by the server, port // combination. Int32 port = 13000; TcpClient client = new TcpClient(server, port); // Translate the passed message into ASCII and store it as a Byte array. Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); // Get a client stream for reading and writing. // Stream stream = client.GetStream(); NetworkStream stream = client.GetStream(); // Send the message to the connected TcpServer. stream.Write(data, 0, data.Length); Console.WriteLine("Sent: {0}", message); // Receive the TcpServer.response. // Buffer to store the response bytes. data = new Byte[256]; // String to store the response ASCII representation. String responseData = String.Empty; // Read the first batch of the TcpServer response bytes. Int32 bytes = stream.Read(data, 0, data.Length); responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes); Console.WriteLine("Received: {0}", responseData); // Close everything. stream.Close(); client.Close(); } catch (ArgumentNullException e) { Console.WriteLine("ArgumentNullException: {0}", e); } catch (SocketException e) { Console.WriteLine("SocketException: {0}", e); } Console.WriteLine("\n Press Enter to continue..."); Console.Read(); }
我现在是这么做的,第一次返回乱码,第二次就会超时,你实现过的吗?我现在是在本地模拟用Telnet登陆局域网网另一台机器,方便加我QQ详细说明下吗(15002653) public static void Connect(String server, String message) { try { // Create a TcpClient. // Note, for this client to work you need to have a TcpServer // connected to the same address as specified by the server, port // combination. Int32 port = 23; TcpClient client = new TcpClient(server, port); // Translate the passed message into ASCII and store it as a Byte array. //Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); // Get a client stream for reading and writing. // Stream stream = client.GetStream(); NetworkStream stream = client.GetStream(); //Send the message to the connected TcpServer. //Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); //stream.Write(data, 0, data.Length); //Console.WriteLine("Sent: {0}", message); //// Receive the TcpServer.response. //// Buffer to store the response bytes. //data = new Byte[256]; //// String to store the response ASCII representation. //String responseData = String.Empty; //// Read the first batch of the TcpServer response bytes. //Int32 bytes = stream.Read(data, 0, data.Length); //responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes); //Console.WriteLine("Received: {0}", responseData); SendCommand(stream, "y"); SendCommand(stream, "administrator"); SendCommand(stream, "1988912"); SendCommand(stream, "ipconfig");
// Close everything. stream.Close(); client.Close(); } catch (ArgumentNullException e) { Console.WriteLine("ArgumentNullException: {0}", e); } catch (SocketException e) { Console.WriteLine("SocketException: {0}", e); } Console.WriteLine("\n Press Enter to continue..."); Console.Read(); } private static void SendCommand(NetworkStream stream,string message) { Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); stream.Write(data, 0, data.Length); Console.WriteLine("Sent: {0}", message); // Receive the TcpServer.response. // Buffer to store the response bytes. data = new Byte[256]; // String to store the response ASCII representation. String responseData = String.Empty; // Read the first batch of the TcpServer response bytes. Int32 bytes = stream.Read(data, 0, data.Length); responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes); Console.WriteLine("Received: {0}", responseData); }
{
try
{
// Create a TcpClient.
// Note, for this client to work you need to have a TcpServer
// connected to the same address as specified by the server, port
// combination.
Int32 port = 13000;
TcpClient client = new TcpClient(server, port); // Translate the passed message into ASCII and store it as a Byte array.
Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); // Get a client stream for reading and writing.
// Stream stream = client.GetStream(); NetworkStream stream = client.GetStream(); // Send the message to the connected TcpServer.
stream.Write(data, 0, data.Length); Console.WriteLine("Sent: {0}", message); // Receive the TcpServer.response. // Buffer to store the response bytes.
data = new Byte[256]; // String to store the response ASCII representation.
String responseData = String.Empty; // Read the first batch of the TcpServer response bytes.
Int32 bytes = stream.Read(data, 0, data.Length);
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
Console.WriteLine("Received: {0}", responseData); // Close everything.
stream.Close();
client.Close();
}
catch (ArgumentNullException e)
{
Console.WriteLine("ArgumentNullException: {0}", e);
}
catch (SocketException e)
{
Console.WriteLine("SocketException: {0}", e);
} Console.WriteLine("\n Press Enter to continue...");
Console.Read();
}
public static void Connect(String server, String message)
{
try
{
// Create a TcpClient.
// Note, for this client to work you need to have a TcpServer
// connected to the same address as specified by the server, port
// combination.
Int32 port = 23;
TcpClient client = new TcpClient(server, port); // Translate the passed message into ASCII and store it as a Byte array.
//Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); // Get a client stream for reading and writing.
// Stream stream = client.GetStream(); NetworkStream stream = client.GetStream(); //Send the message to the connected TcpServer.
//Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);
//stream.Write(data, 0, data.Length); //Console.WriteLine("Sent: {0}", message); //// Receive the TcpServer.response. //// Buffer to store the response bytes.
//data = new Byte[256]; //// String to store the response ASCII representation.
//String responseData = String.Empty; //// Read the first batch of the TcpServer response bytes.
//Int32 bytes = stream.Read(data, 0, data.Length);
//responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
//Console.WriteLine("Received: {0}", responseData); SendCommand(stream, "y"); SendCommand(stream, "administrator"); SendCommand(stream, "1988912"); SendCommand(stream, "ipconfig");
// Close everything.
stream.Close();
client.Close();
}
catch (ArgumentNullException e)
{
Console.WriteLine("ArgumentNullException: {0}", e);
}
catch (SocketException e)
{
Console.WriteLine("SocketException: {0}", e);
} Console.WriteLine("\n Press Enter to continue...");
Console.Read();
} private static void SendCommand(NetworkStream stream,string message)
{
Byte[] data = System.Text.Encoding.ASCII.GetBytes(message); stream.Write(data, 0, data.Length); Console.WriteLine("Sent: {0}", message); // Receive the TcpServer.response. // Buffer to store the response bytes.
data = new Byte[256]; // String to store the response ASCII representation.
String responseData = String.Empty; // Read the first batch of the TcpServer response bytes.
Int32 bytes = stream.Read(data, 0, data.Length);
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
Console.WriteLine("Received: {0}", responseData);
}