Функция MQLSetInteger() предназначена для изменения текущей кодовой страницы в запущенной mql4-программе. Это может понадобиться в тех случаях, когда для запускаемых mql4-программ терминал устанавливает по умолчанию кодовую страницу, отличающаяся от той, которая использовалась при её компиляции. Например, mql4-программа скомпилирована на...
阅读关于类型转换和这样做的损失。https://www.mql5.com/ru/docs/basis/types/casting
谢谢你!这个想法是这样的:我们有一个指标,它给出的准确信号很少。
打开任何数量的图表,根据MM和指标信号,开立头寸。我们在图表上创建文本标记或按钮,表明符号和未结头寸的当前利润。当你点击该按钮时,所需的图表就在前台。
四人组?
是
不是普通的DLL,甚至不是Temp.ex4!
是
问题是,在新的MQL4中,字符串是unicode。在所有其他地方:对象、指标、图表、符号名称、日志、设置,等等。- 字符串仍为unicode。因此,在MQL4程序中与 "外部世界 "进行通信时,每次都要进行WideCharToMultiByte转换。在正常情况下,字符串的字符是单字节的(但在不同的编码中有所不同),在东南亚是多字节的(在中文布局中,一个字符需要1到4个字节)。
因此,不仅是中国人,欧洲人也不会理解1251代码页。
问题是,在新的MQL4中,字符串是unicode。在所有其他地方:对象、指标、图表、符号名称、日志、设置,等等。- 字符串仍为unicode。因此,在MQL4程序中与 "外部世界 "进行通信时,每次都要进行WideCharToMultiByte转换。在通常情况下,字符串的字符是单字节的(但在不同的编码中有所不同),在东南亚是多字节的(在中文布局中,一个字符需要1到4个字节)。
因此,不仅是中国人,欧洲人也不会理解1251代码页。
技巧是这样的:我们创建了一个有西里尔文名字的对象,然后在点击时在OnChartEvent 中处理它,但它的名字在那里是不可见的。
我们今天会在五号检查,看看这个地方会不会有问题。
事情是这样的:我们创建了一个名字为西里尔文的对象,然后在点击时在OnChartEvent 中处理它,但你在那里看不到它的名字。
今天我们将在FIVE检查,看看这个地方是否会有问题。
它将在Fiver中发挥作用。
而在《第四纪》中,对你的情况有一个解决方案。
在OnInit中调用MQLSetInteger(MQL_CODEPAGE,CP_ACP)。
那么 "来回 "的字符串转换将是充分的
这段代码在欧元兑美元30米上运行
终端产生了一个错误。
当我把它打印出来时,它生成了-1。
请告诉我我做错了什么。
此代码在EURUSD 30m上运行
终端给出一个错误。
就这样。
?
请告诉我我做错了什么。
此代码在EURUSD 30m上运行
,终端给出一个错误。