错误、漏洞、问题 - 页 867

 

下午好。

重新安装了系统。我已经从头开始安装了MT5。结果是,演示服务器已经改变。现在是FXCM-MT5Demo01,我不知道之前的旧版本是什么。所以我以前的模拟账户没有发挥作用。

我注册了一个新的模拟账户。之前,如果你滚动到故事的左边,它就会完成它。在这个服务器上,根本就没有什么。我切换了时间框架,历史记录没有被下载。

2012年10月2日之前没有任何消息。当我测试一些复杂的标准专家顾问时,当我把时间框架设置为一年时,它没有被下载。

请告知如何下载这个故事,或者给我旧的演示服务器的地址。

Win 7 Max Rus SP1 x64, 标准防火墙被禁用, Avast free 7.0.1466 (开关) MT5 v.5.00 Build 712 (10/12/2012)

在MT5中打开 "关于 "窗口时,我不能用Alt+Tab。

 
Vladon:

我在网站简介中,它是完整的,我没有触摸它,然后今天我在做工作 - 和平板电脑是沉默的。

我想这是怎么回事--然后我去了该网站,我的身份证不在那里。

填了一个新的,我不能说它有无变化,在我看来,数字是一样的。

你目前是否收到任何通知?
 
PVOID:
此刻通知是否来到了你的身边?
是的,在网站上重新输入后。
 

谁明白,这是正确的结果吗?

代码。

   ushort Var=1040;
   Alert("1: "+StringFormat("%c",Var));
   
   uchar Var2=192;
   Alert("2: "+StringFormat("%C",Var2));   
   
   Alert("3: "+ShortToString(Var)+" "+CharToString(Var2));

其结果是。

ShortToString(Var)和CharToString(Var2)工作正常,都给出了一个俄语 "A"。

但为什么StringFormat("%C",Var2)没有给出一个俄文 "A"?

它写在帮助中。

c

䵮䵮

(Unicode)字符类型

C

䵮䵮

Char(ANSI)字符类型

 
Integer:

但为什么StringFormat("%C",Var2)没有给出一个俄文 "A"?

最有可能的是StringFormat适用于UTF-7,而CharToString适用于当前的Windows字符集。这就是为什么它给出了这样的结果。

比如说。

uchar ar[1];
ar[0]=192;
Print(CharArrayToString(ar,0,WHOLE_ARRAY,CP_UTF7)," ",CharArrayToString(ar,0,WHOLE_ARRAY,CP_ACP));
À À

问题是,为什么CharArrayToString 有选择代码页的选项,而CharToString却没有?

 
avoitenko:

StringFormat很可能对UTF-7工作,这就是为什么它产生这个结果。

比如说。

À À

问题是为什么CharArrayToString有一个字符集选择选项,而CharToString却没有?


似乎是这样的,但在关于ANSI的帮助中写到了这一点。

C intChar(ANSI)字符。

所以,在帮助中写的应该理解为 "C int字符的char(ANSI)类型,但仍然来自UTF表"?这样的事情有什么意义,这就是不清楚的地方。

 
Integer:

所以书面帮助应该理解为 "C int字符的char(ANSI)类型,但仍来自UTF表"?这是什么意思,这一点并不清楚。

如果我是开发者,我将用当前的Windows编码而不是UTF-7来替换%C的StringFormat。

这样,结果将与调用CharToString时 相同。

 
avoitenko:

如果我是开发者,我会将%C的StringFormat设置为当前的Windows编码而不是UTF-7。

这样,结果与调用CharToString时 相同。

我也这么认为,也许是个错误?
 
Integer:

谁明白,这是正确的结果吗?


我们只是简单地将参数翻译(有致命的错误检查)到适当的CRT函数中。
 
Integer:

谁明白,这是正确的结果吗?

谢谢你提出这个问题。我们将在即将发布的版本中修复这一行为。将根据CP_ACP 进行转换。