Я пишу программу чата для меня и моего друга на C #, и я не знаю, как подключить мой компьютер к компьютеру в другой сети. Код прекрасно работает в моей домашней сети между двумя компьютерами, но между двумя разными сетями он не работает. Я знаю, почему это не работает, я имею в виду, что это имеет смысл, я думаю, что я каким-то образом подключил наши маршрутизаторы к стандартному шлюзу или что-то в этом роде, но я не могу найти в Интернете ничего, что мне помогло бы.
Возможно, C # - неподходящий язык для приложения чата, но я уверен, что это возможно. Если кто-то может сказать мне, как это работает в C # или какой язык будет лучше для него?
private void Form1_Load(object sender, EventArgs e)
{
//set up socket
socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
//get user IP
textLocalIp.Text = GetLocalIP();
//textRemoteIp.Text = GetLocalIP();
}
private void buttonConnect_Click(object sender, EventArgs e)
{
//binding Socket
epLocal = new IPEndPoint(IPAddress.Parse(textLocalIp.Text), Convert.ToInt32(textLocalPort.Text));
socket.Bind(epLocal);
//connecting to remote IP
epRemote = new IPEndPoint(IPAddress.Parse(textRemoteIp.Text), Convert.ToInt32(textRemotePort.Text));
socket.Connect(epRemote);
//listeninf the specific port
buffer = new byte[1500];
socket.BeginReceiveFrom(buffer, 0, buffer.Length, SocketFlags.None, ref epRemote, new AsyncCallback(MessageCallBack), buffer);
}