【MQL4テクニック】『DLLの使用を許可する』にチェックがされているかを確認する方法

MQL4テクニック

EAやインジケータの処理にDLLを含んでいる場合、『DLLの使用を許可する』にチェックを入れなければ不具合の原因となってしまいます。

チャートを挿入した時点で正しくチェックをされているかを判別するサンプルコードをご紹介します。

MQLInfoInteger関数を使用する

MQLInfoInteger()関数を使用することで、MQL4プログラムに関する様々な情報を取得することが出来ます。

int MQLInfoInteger(int prop_id);

引数の意味は以下です。

引数名詳細
prop_idプロパティIDを指定します。
DLLのチェックを確認する場合は『MQL_DLLS_ALLOWED』
その他のプロパティはこちらから確認できます。

サンプルコード(コピペでOK)

DLLがチェックされていない場合はアラートを表示して、EA,インジケータが挿入されるのを防ぎます。

int OnInit(){

   if (MQLInfoInteger(MQL_DLLS_ALLOWED) != 1) {
      Alert("DLL not allowed\n\n「DLLの使用を許可する」をチェックしてください。");
      return(INIT_FAILED);
   }
   return(INIT_SUCCEEDED);
}
POINT

こちらの記事で悩みが解決されない場合は、
MQL4 User Community に参加してお気軽にご質問ください。

MQL4初心者の方や開発に行き詰った方の悩みを、 様々なソフトウェアやツールを開発してきた経験豊富なエンジニアたちが解決いたします。