المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : connecting to Telnet



C# Programming
08-19-2009, 10:40 AM
Hi,
I'm trying to connect with telnet to a switch a by typing it's user and password to be able to connect to it.

i found this code:
at - Here (http://social.msdn.microsoft.com/Forums/en-US/netfxnetcom/thread/6c3e79ac-c939-418d-bf7b-21bb73a9b7fd)
protected void checkSearch(string destServerIp, int port)
{
TcpClient oClient = new TcpClient();
try
{
oClient.Connect(destServerIp, port);
NetworkStream ns = oClient.GetStream();
txtResults.Text = read(ns);
write(ns,"telnetUser");
txtResults.Text += Environment.NewLine + read(ns);
write(ns, "telnetPassword");
txtResults.Text += Environment.NewLine + read(ns);
write(ns, Environment.NewLine);
txtResults.Text += Environment.NewLine + read(ns);
ns.Close();
oClient.Close();
}
catch (Exception ex)
{
txtResults.Text += Environment.NewLine + ex.Message;
if (oClient.Connected)
oClient.Close();
}
}

private string read(NetworkStream ns)
{
StringBuilder sb = new StringBuilder();
if (ns.CanRead)
{
byte[] readBuffer = new byte[1024];
int numBytesRead = 0;
do
{
numBytesRead = ns.Read(readBuffer, 0, readBuffer.Length);
sb.AppendFormat("{0}", Encoding.ASCII.GetString(readBuffer, 0, numBytesRead));
sb.Replace(Convert.ToChar(24),' ');
sb.Replace(Convert.ToChar(255), ' ');
sb.Replace('?', ' ');
}
while (ns.DataAvailable);
}
return sb.ToString();
}
private void write(NetworkStream ns, string message)
{
byte[] msg = Encoding.ASCII.GetBytes(message + Environment.NewLine);
ns.Write(msg, 0, msg.Length);
}


i think the return message that i recieve it to long for the byte[].

The application fall he:
numBytesRead = ns.Read(readBuffer, 0, readBuffer.Length);
but i don't reciere any error message.

Can some please help me here ???
http://www.barakasoft.com/script/Forums/Images/smiley_doh.gif