エラー、バグ、質問 - ページ 1996

 
Slava:
誰が止めるんだ?

MQL5はそれを許さない。

 
fxsaber:

MQL5はそれを許さない。

誰が言ったか。"そうではない"?例えば、次のように試してみてください。

ChartSaveTemplate(chart_id,"\\Files\\MyPreferredTemplates\\cewl.tpl");
 
Slava:

誰が言ったか。"許さない"?例えば、こんなことを試してみてください。

自分でやってみたらどうだろう。許さない。

 
fxsaber:

自分でやってみたらどうだろう。許さない。

再挑戦(もしや?)

それは

 
Slava:

再挑戦(もしや?)

許可する

1653のビルドはないようですね。

void OnStart()
{
  Print(ChartSaveTemplate(0, "\\Files\\MyPreferredTemplates\\cewl.tpl"));
  Print(TerminalInfoInteger(TERMINAL_BUILD));
}


結果

false
1653
 
fxsaber:

このようなVERY HARD TO DETECTINGなエラーが発生するので、これでいいのかなと思ったんです。

プログラムが正常に動作していないという事実そのものをキャッチすることは極めて困難です。そして、その原因を探るには、そのエラーを再現しなければならず、これまた大変です。そして、ある変数の初期化が不完全である巨大なコードを掘り起こさなければならないのです。これには、警告がとても役に立ちます。ただし、単純なケースに限る。配列全体が初期化されないようなケースは,コンパイル段階でチェックするのは非現実的です.

もしかしたら、あなたの思いは別のところにあるのかもしれませんが、このケースでは、プログラマーの些細な不注意がこのエラーを招いたのです。

数メートルの警告の連鎖にイライラしないか?

 
fxsaber:

1653のビルドはないようですね。


結果

どうやらMyPreferredTemplatesフォルダーが見当たらないようです。また、保存時にフォルダが作成されない。パスからフォルダを削除した結果、このようになりました。

2017.09.11 14:59:51.538 00 (EURUSD,H1)  true
2017.09.11 14:59:52.328 00 (EURUSD,H1)  1653
 
Alexey Viktorov:

どうやらMyPreferredTemplatesフォルダーが見当たらないようです。そして、保存してもフォルダが作成されない。パスからフォルダを削除した結果、このようになりました。

ありがとうございます!想像していませんでした。今は動いています。その前に、"..﹁﹂﹂﹂と書いてあるのを試したら、同じように動かなかった。Filesの前のスラッシュは、" gucci.tpl "が動作することを意味するのでしょうか?どうしてそう思ったんだろう?

 
fxsaber:

1653のビルドはないようですね。


結果

ビルド1565から動作しています。2017年3月現在。

GetLastErrorは 何を返すのですか?

 
fxsaber:

ありがとうございます!想像していませんでした。今は動いています。その前に、"..﹁﹂﹂﹂と書いてあるのを試したら、同じように動かなかった。Filesの前のスラッシュは、" gucci.tpl "が動作することを意味するのでしょうか?どうしてそう思ったんだろう?

ファイル名冒頭のスラッシュは、"MQL5のルートから "という意味です