文章很酷,但应用的目的是什么?这是一项如此低级的技术,即使是一个简单的示例也需要写这么多,而且如果有什么严重的问题?
反正你也不能把它放到市场上,对你自己来说,最好还是使用WCF。 或者使用wininet.dll,如果是简单的东西,它已经包含在 Windows 中了。
是的,对于WCF ,你必须与 .NET 建立连接,但这样一来,生活就变成了假期。我们交换的是字节包,因此有必要将其分解为组件,并直接将其分解为类的实例。您可以在任何模式下工作 - http、二进制、https 和其他所有模式。同时,整个 gemmor 的授权、解析等工作已由微软人员负责。
这篇文章可以说是一次历史性的旅行,让我们回到了电脑内存为 640 Kb、螺丝为 40 Mb(确切地说是兆字节:)的年代。)
- msdn.microsoft.com
文章很酷,但应用的目的是什么?这是一项如此低级的技术,即使是一个简单的示例也需要写这么多,而且如果有什么严重的问题?
反正你也不能把它放到市场上,对你自己来说,最好还是使用WCF。 或者使用wininet.dll,如果是简单的东西,它已经包含在 Windows 中了。
是的,对于WCF ,你必须与 .NET 建立连接,但这样一来,生活就变成了假期。我们交换的是字节包,因此有必要将其分解为组件,并直接将其分解为类的实例。您可以在任何模式下工作 - http、二进制、https 和其他所有模式。同时,整个 gemmor 的授权、解析等工作都已由微软人员负责。
这篇文章可以说是一次历史性的旅行,让我们回到了那个电脑内存只有 640 Kb,而螺丝钉却有 40 Mb(正好是兆字节:)的时代。)
如果有办法从 dll 向终端发送 USER_EVENT,那就完全没有问题了--所有与交易(通信和图形用户界面)无关的功能都可以从终端....。
但这样一来,异步套接字在 mql 中就无法工作了(或者说可以工作,但有限制),而同步 tcp 很容易让 EA 挂起......:-(
因此,问题仍然是异步套接字无法在 mql 中使用(或者说可以,但有限制)。
MQL5 将很快拥有原始客户端(无服务器)网络功能,包括 UDP。
通过允许的 IP 地址和 URL 列表进行控制,就像现在的WebRequest 一样。
你不喜欢文章中的异步套接字? 你认为它有什么局限性?
首先,文章中说的是 UDP,而不是 TCP。所以这就是它的意思。
严格来说,它只是一个非阻塞套接字,而不是异步操作。
首先,这篇文章说的是 UDP,而不是 TCP。这才是文章的主题。
而且严格来说,只给出了非阻塞套接字,根本没有异步操作。
))))) 是的......读完这篇文章就得五分。
所以我写道,使用 wininet.dll 更简单。
你们怎么能如此肯定,wininet.dll 将在服务器创建方面取代套接字?
你们真让我吃惊。
马克西姆-库兹涅佐夫(Maxim Kuznetsov )认为这篇文章是关于 UDP 的。
阿列克谢-沃尔昌斯基(Alexey Volchanskiy)认为 是关于 http 请求的。
总之,这完全是一派胡言,我们只能以貌取人。
有了这样的 "专家",论坛已经跌入谷底。
你们怎么能如此肯定 wininet.dll 将在服务器创建方面取代套接字?
你们真让我吃惊。
马克西姆-库兹涅佐夫(Maxim Kuznetsov )认为这篇文章是关于 UDP 的。
阿列克谢-沃尔昌斯基(Alexey Volchanskiy)认为 是关于 http 请求的。
总之,这完全是一派胡言,我们只能以貌取人。
有这样的 "专家 "存在的论坛已经深入到了底层。
新文章 在MQL中操作套接字,或者如何成为信号提供者已发布:
套接字(Sockets)… 如果没有它们,我们的IT世界还可能存在吗?时光倒转回1982年,再到现在,它们每分每秒都与我们同在,这是网络的基础,是我们所居住的 Matrix 世界的神经末梢。
演示这些代码的互操作:
细心的读者将会注意到,客户端套接字可以通过调用 MQL 函数中的 WebRequest 来替换的,为此,只要加上一系列HTTP 头部(header)行并且在客户终端的设置中允许访问服务器的URL就可以了,您可以自己来做实验。
作者:o_O