错误、漏洞、问题 - 页 2342 1...233523362337233823392340234123422343234423452346234723482349...3184 新评论 Nikolai Semko 2018.12.10 15:11 #23411 fxsaber: 资源是否限制在这种规模?因此,浓缩传输的数据就更有意义了。 A100 2018.12.10 16:29 #23412 fxsaber: 在这个意义上,MT4比MT5明智得多--没有程序崩溃,你可以分析LastError。首先:在一个无法恢复的关键错误之后继续执行程序 不是智慧,而是愚蠢。 第二:在MetaTrader 4 765x32中运行后,我还没有达到PrintError()。 第三:如果你删除strict,它已经达到了,但GetLastError()返回0,所以不清楚该怎么分析了 Georgiy Merts 2018.12.10 17:05 #23413 fxsaber: 如何通知用户停止EA的情况?在这个意义上,MT4比MT5明智得多--没有程序崩溃,你可以分析LastError。而当访问一个数组时,检查访问索引不是很合乎逻辑吗? fxsaber 2018.12.10 17:32 #23414 A100:首先:在发生无法恢复的关键错误后继续执行程序 是愚蠢的,而不是明智的。 第二,你在MetaTrader 4 765x32中执行这个程序 后,PrintError()永远不会发挥作用。 第三,如果你去掉strict,它将返回0,但GetLastError(),所以不清楚要分析什么。没有任何任务表明MT4比MT5好。我必须要解决一个实际问题。 关于交易、自动交易系统和策略测试的论坛 图书馆:HistoryTicks fxsaber, 2018.12.10 13:55获得EA因数组超出范围 而停止的信息(不是EA作者的错)。例如,由于缺乏内存或其他故障。这意味着你会马上知道EA已经异常停止,而不是在几个小时后才意外发现。当专家顾问停止时,这是不愉快的,但它没有以任何方式报告。 格奥尔基-梅尔茨。而当访问一个数组时,检查访问索引不是很合乎逻辑吗? 这是不符合逻辑的。 fxsaber 2018.12.11 09:19 #23415 Nikolai Semko:因此,浓缩传输的数据就更加合理了。经检查,60Mb很容易写入(MT4/5)到资源。因此,如果有一个限制,它是更高的。 Georgiy Merts 2018.12.11 10:31 #23416 一个小问题,但仍然是。 当发送至存储器时 - 第一个面板 "修复" - 工作正常,而第二个,确认,在我的第一种情况下,不等待OK键,但立即出去,第二 - 它不显示所有的文件发送。但我检查过了--文件是正常发送的。 只有我是这样吗? 这似乎是正确的--当发送后,会显示一个已发送文件的列表,并确认一切顺利。 Georgiy Merts 2018.12.11 10:34 #23417 fxsaber:没有意义。为什么呢? 在我看来,我们不需要在这些地方检查索引,从逻辑上讲,不可能出现超出数组限制 的索引。即使在这种情况下,你也应该使用ASSERT,以防万一。 而在那些索引依赖于与外部参数、报价和用户操作相关的先前操作的地方,对索引参考的检查应该是强制性的。 在你看来,不是这样的吗? fxsaber 2018.12.11 10:58 #23418 Georgiy Merts:为什么呢? 在我看来,没有必要检查索引,根据程序的逻辑,索引不可能出现在数组 之外。 我同意。 即使在这种情况下,你也必须使用ASSERT,以防万一。 我不同意,因为代码的可读性会受到很大影响。 在这些地方,指数取决于以前有关外部参数、报价和用户行为的操作,对处理指数的检查必须是强制性的。我不明白我们这里所说的外部参数是什么意思。每当你检查ArrayResize或ArrayCopy是否正常完成,而不是琐碎的内存耗尽时,都会通过ASSERT使代码膨胀,这真是一团糟。如果你不检查它,你会得到一个难以察觉的专家顾问的停止。到目前为止,我只找到一个解决方案--替换ArrayResize和ArrayCopy。 Vladimir Pastushak 2018.12.13 17:46 #23419 Slava:谁在挡路?ChartSaveTemplate(chart_id,"\\Files\\MyPreferredTemplates\\cewl.tpl");该函数不会创建一个文件夹,它只在一个文件夹已经存在的情况下写入一个模板 ....如果该文件夹不存在,错误4112因此,文件夹必须事先做好准备...... 有趣的是,FileOpen函数不能在模板文件夹中创建一个文件夹,ChartSaveTemplate函数也不能创建目录...... 也就是说,如果你想在子文件夹中保存模板,那么就手动创建文件夹....。 Vladislav Andruschenko 2018.12.14 08:54 #23420 没有记忆 在搜索GlobalVariables 时 能否出现? 1...233523362337233823392340234123422343234423452346234723482349...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
资源是否限制在这种规模?
因此,浓缩传输的数据就更有意义了。
在这个意义上,MT4比MT5明智得多--没有程序崩溃,你可以分析LastError。
首先:在一个无法恢复的关键错误之后继续执行程序 不是智慧,而是愚蠢。
第二:在MetaTrader 4 765x32中运行后,我还没有达到PrintError()。
第三:如果你删除strict,它已经达到了,但GetLastError()返回0,所以不清楚该怎么分析了
如何通知用户停止EA的情况?
在这个意义上,MT4比MT5明智得多--没有程序崩溃,你可以分析LastError。
而当访问一个数组时,检查访问索引不是很合乎逻辑吗?
首先:在发生无法恢复的关键错误后继续执行程序 是愚蠢的,而不是明智的。
第二,你在MetaTrader 4 765x32中执行这个程序 后,PrintError()永远不会发挥作用。
第三,如果你去掉strict,它将返回0,但GetLastError(),所以不清楚要分析什么。
没有任何任务表明MT4比MT5好。我必须要解决一个实际问题。
关于交易、自动交易系统和策略测试的论坛
图书馆:HistoryTicks
fxsaber, 2018.12.10 13:55
获得EA因数组超出范围 而停止的信息(不是EA作者的错)。例如,由于缺乏内存或其他故障。这意味着你会马上知道EA已经异常停止,而不是在几个小时后才意外发现。
当专家顾问停止时,这是不愉快的,但它没有以任何方式报告。
而当访问一个数组时,检查访问索引不是很合乎逻辑吗?
这是不符合逻辑的。
因此,浓缩传输的数据就更加合理了。
经检查,60Mb很容易写入(MT4/5)到资源。因此,如果有一个限制,它是更高的。
一个小问题,但仍然是。
当发送至存储器时 - 第一个面板 "修复" - 工作正常,而第二个,确认,在我的第一种情况下,不等待OK键,但立即出去,第二 - 它不显示所有的文件发送。但我检查过了--文件是正常发送的。
只有我是这样吗?
这似乎是正确的--当发送后,会显示一个已发送文件的列表,并确认一切顺利。
没有意义。
为什么呢?
在我看来,我们不需要在这些地方检查索引,从逻辑上讲,不可能出现超出数组限制 的索引。即使在这种情况下,你也应该使用ASSERT,以防万一。
而在那些索引依赖于与外部参数、报价和用户操作相关的先前操作的地方,对索引参考的检查应该是强制性的。
在你看来,不是这样的吗?
为什么呢?
在我看来,没有必要检查索引,根据程序的逻辑,索引不可能出现在数组 之外。
我同意。
即使在这种情况下,你也必须使用ASSERT,以防万一。
我不同意,因为代码的可读性会受到很大影响。
在这些地方,指数取决于以前有关外部参数、报价和用户行为的操作,对处理指数的检查必须是强制性的。
我不明白我们这里所说的外部参数是什么意思。每当你检查ArrayResize或ArrayCopy是否正常完成,而不是琐碎的内存耗尽时,都会通过ASSERT使代码膨胀,这真是一团糟。如果你不检查它,你会得到一个难以察觉的专家顾问的停止。到目前为止,我只找到一个解决方案--替换ArrayResize和ArrayCopy。
谁在挡路?
ChartSaveTemplate(chart_id,"\\Files\\MyPreferredTemplates\\cewl.tpl");
该函数不会创建一个文件夹,它只在一个文件夹已经存在的情况下写入一个模板 ....如果该文件夹不存在,错误4112
因此,文件夹必须事先做好准备......
有趣的是,FileOpen函数不能在模板文件夹中创建一个文件夹,ChartSaveTemplate函数也不能创建目录......
也就是说,如果你想在子文件夹中保存模板,那么就手动创建文件夹....。
没有记忆
在搜索GlobalVariables 时
能否出现?