Спасибо, что прочитали и ответили заранее!
Я написал простую программу на C #, которая соединяется через сокеты с помощью стороннего инструмента. Всякий раз, когда я отправляю строку длиной более 1024 символов, стороннее программное обеспечение выдает ошибку. Теперь я пытаюсь выяснить, является ли это проблемой моего кода сокета или другого программного обеспечения (EnergyPlus).
Это всего лишь несколько строк кода, и если у кого-то есть предложения, они будут высоко оценены!
using System.IO;
using System.Net;
using System.Net.Sockets;
...
private int port = 1410;
private TcpListener listener;
private Stream s;
private StreamReader sr;
private StreamWriter sw;
private Socket soc;
...
Вот это действительно начинается:
listener = new TcpListener(port);
listener.Start();
soc = listener.AcceptSocket();
// now, the other program connects
soc.SetSocketOption(SocketOptionLevel.Socket,
SocketOptionName.ReceiveTimeout, 10000);
s = new NetworkStream(soc);
sr = new StreamReader(s);
sw = new StreamWriter(s);
sw.AutoFlush = true; // enable automatic flushing
sw.WriteLine("more or less than 1024 characters");
...
Это код, который я использую. Что-нибудь я забыл? Что-нибудь, о чем я должен позаботиться?
Я рад любым предложениям.
Ошибка, которую я получаю от E +, следующая:
ExternalInterface: Socket communication received error value " 1" at time = 0.00 hours.
ExternalInterface: Flag from server " 0".