Это определение для моего класса, с которым я отправляю сообщения сокета.
class VConnect
{
public void Connect2(string host, int port, string cmd)
{
Socket s = new Socket(AddressFamily.InterNetwork,
SocketType.Stream,
ProtocolType.Tcp);
try
{
IPAddress[] IPs = Dns.GetHostAddresses(host);
s.Connect(IPs[0], port);
}
catch (Exception e)
{
MessageBox.Show(e.Message);
s.Close();
}
if (s.Connected)
{
byte[] sendBites = System.Text.Encoding.ASCII.GetBytes(cmd);
s.Send(sendBites);
s.Shutdown(SocketShutdown.Both);
s.Close();
}
}
}
, если я использую строку IP-адреса для имени хоста, тогда все работает как положено, но когда я передаю имя хоста вместо IP-адреса, чем я получаю сообщение об ошибке, что протокол не поддерживается.