奇葩的自定义事件sparam参数字符串长度限制

 

今天发生一个奇葩的事情,在自定义事件参数sparam上增加了几个汉子,就截断了,于是我立即查看了官方文档,说是有63个字符限制,我之前一直使用的sparam长度怎么算也超过63个字符啊,怎么一直都正常呢?

我就蒙了,这个限制的意义在哪里,你们Mql5 又不支持消息广播机制,只能我自己通过自定义事件实现,这个长度限制太失望了,你无情的截断了我的字符串,接收方要解析的啊,你知道我多难受吗?



sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御|【WavePart】Defense InStart

178个字符


sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御

156个字符


截断后是156个字符,官方这63字符怎么计算出来的?63个字符能干啥啊!!!,强烈谴责Mql5

 
Jiayou Hu:

今天发生一个奇葩的事情,在自定义事件参数sparam上增加了几个汉子,就截断了,于是我立即查看了官方文档,说是有63个字符限制,我之前一直使用的sparam长度怎么算也超过63个字符啊,怎么一直都正常呢?

我就蒙了,这个限制的意义在哪里,你们Mql5 又不支持消息广播机制,只能我自己通过自定义事件实现,这个长度限制太失望了,你无情的截断了我的字符串,接收方要解析的啊,你知道我多难受吗?



sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御|【WavePart】Defense InStart

178个字符


sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御

156个字符


截断后是156个字符,官方这63字符怎么计算出来的?63个字符能干啥啊!!!,强烈谴责Mql5

没看懂你说什么,63字符应该完全够用,尽量不要用汉子,好像一个汉子占用两个字符

 
Jiayou Hu:

今天发生一个奇葩的事情,在自定义事件参数sparam上增加了几个汉子,就截断了,于是我立即查看了官方文档,说是有63个字符限制,我之前一直使用的sparam长度怎么算也超过63个字符啊,怎么一直都正常呢?

我就蒙了,这个限制的意义在哪里,你们Mql5 又不支持消息广播机制,只能我自己通过自定义事件实现,这个长度限制太失望了,你无情的截断了我的字符串,接收方要解析的啊,你知道我多难受吗?



sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御|【WavePart】Defense InStart

178个字符


sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御

156个字符


截断后是156个字符,官方这63字符怎么计算出来的?63个字符能干啥啊!!!,强烈谴责Mql5

这个无限制可能性不大,你做什么要求这么长字符

 
Jiayou Hu:

今天发生一个奇葩的事情,在自定义事件参数sparam上增加了几个汉子,就截断了,于是我立即查看了官方文档,说是有63个字符限制,我之前一直使用的sparam长度怎么算也超过63个字符啊,怎么一直都正常呢?

我就蒙了,这个限制的意义在哪里,你们Mql5 又不支持消息广播机制,只能我自己通过自定义事件实现,这个长度限制太失望了,你无情的截断了我的字符串,接收方要解析的啊,你知道我多难受吗?



sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御|【WavePart】Defense InStart

178个字符


sparam:

InStart_TT_A|OutStart_DE_TT|InStart_DE_TT|10000.0|Buy|1.0|2020.11.09 01:00:00|1.18923|2020.11.09 07:00:00|1.18805|-118.0|【WavePart】【WavePart】收破(1)的aaOutStart防御

156个字符


截断后是156个字符,官方这63字符怎么计算出来的?63个字符能干啥啊!!!,强烈谴责Mql5

这个无限制可能性不大,你做什么要求这么长字符

 

这些消息都要传递给图表消息队列,文本消息的长度100%是有长度限制的。

好像你传递订单数据,那不够用就通过文件传递数据。

 
加密编码一遍,使用时在解码!不就行了
 
xiaokkangg CHEN:
加密编码一遍,使用时在解码!不就行了

加密只会让字符串更长

 
Jiayou Hu #:

加密只会让字符串更长

写入文件或者数据库,然后发送广播信息,对方根据对应参数读取文件或者数据库内容,也可以考虑用全局变量做管道通讯

原因: