- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
感谢您提前阅读和回答!
我编写了一个简单的 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".
最佳答案
您需要查看 EnergyPlus 定义的规范; 任何套接字通信都需要规则。这里有两个明显的选择:
实际上,我发现它正在做任何事情 很有趣,因为那里没有明显的“框架”; TCP是一个流,所以你通常需要帧来划分逻辑消息。这通常意味着以下之一:
这些你都不做,所以在我写的任何服务器中,在其他事情发生之前,这将是一个不完整的消息。听起来是基于文本的;我会尝试添加一个 cr/lf/crlf
关于c# - Windows 上的套接字 - 我是否遗漏了程序中的某些内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9240699/
我正在尝试运行某人给我的一些 C++ 代码。起初有一个指向 istream 文件的断开链接,我通过添加包含路径修复了这个问题: C:\Program Files (x86)\Embarcadero\R
谁能告诉我如何防止 .git 目录的内容被上传到 PyPi。我的 MANIFEST.in 看起来像这样: global-include *.py *.js *.rst *.html *.css *.l
最近在 typescript 项目的VSCode中遇到如下情况: 文件:some-interface.ts // no import statements have been skipped. Thi
为我找到这个问题的合适标题有点困难,所以也许这个例子会澄清我的问题。 我正在发出 ajax 请求以将一些变量从 JS 传递到 PHP。这些变量之一是带有一些选项的 URL,即 https://www.
我是一名优秀的程序员,十分优秀!