Skip to content

カスタマイズ変数の設定

AIアシスタントによる実装や、MQLAuthBoilerplate.mqh を使った実装では、ソースコードの先頭に以下のカスタマイズ変数が追加されます。これらの値を変更することで、メッセージ表示・アップデート通知・体験版・ロゴ表示などの動作を切り替えられます。

mql5
//--- MQLAuth カスタマイズ
bool _useApplicationMessage = true;      // 一斉メッセージを利用する
int  _applicationMessageViewSecond = 8;  // 一斉メッセージを消すまでの秒数
bool _useUserMessage = true;             // 個別メッセージを利用する
int  _userMessageViewSecond = 8;         // 個別メッセージを消すまでの秒数
bool _useUpdateMessage = true;           // アップデートのお知らせを利用する
bool _useTrial = false;                  // 体験版機能を使用する
int  _day = 0;                           // 体験版の日数
bool _useLogo = false;                   // ロゴを表示する
string _logourl = "";                    // ロゴクリックで開くページ
bool _useUpdateDownloadLink = false;     // 新しいバージョンのダウンロードリンクを表示する

これらの変数について

  • これらは販売者(開発者)がソースコード内で設定するものです。EAのパラメーター(input)ではないため、利用者の画面には表示されません。
  • 必ず #include <MQLAuth.mqh>に置いてください(MQLAuth.mqh 内の処理がこれらの変数を参照するため、順序が逆だとコンパイルエラーになります)。
  • 既定値のままでも、口座番号認証・利用期限表示・メッセージ・アップデート通知は問題なく動作します。

メッセージ表示に関する変数

チャート上には、認証成功後に「一斉メッセージ → 個別メッセージ → アップデート通知/体験版期限」の順で情報が表示されます。この表示のオン・オフと表示時間を制御します。

変数型・既定値説明
_useApplicationMessagebool・true一斉メッセージを表示するか
_applicationMessageViewSecondint・8一斉メッセージを表示する秒数
_useUserMessagebool・true個別メッセージを表示するか
_userMessageViewSecondint・8個別メッセージを表示する秒数

_useApplicationMessage(一斉メッセージ)

管理画面でEA・インジケーターに設定した「一斉メッセージ」を、利用者のチャート左下に表示するかどうかです。

  • true(既定) … 認証成功後にサーバーから一斉メッセージを取得し、チャートに表示します(1時間に1回確認)。メッセージ本文に区切り文字「#」を付けてURLを添えると、メッセージのクリックでそのURLをブラウザで開けます。
  • false … 一斉メッセージを取得・表示しません。

_applicationMessageViewSecond(一斉メッセージの表示秒数)

一斉メッセージを表示してから、次の表示(個別メッセージ)へ切り替わるまでの秒数です。既定は 8(8秒)。数字を大きくすると長く表示され、小さくすると早く次へ切り替わります。

_useUserMessage(個別メッセージ)

管理画面で利用者ごとに設定した「個別メッセージ」を表示するかどうかです。

  • true(既定) … 認証時に取得したその利用者あての個別メッセージを、一斉メッセージのあとに表示します。「#」付きURLでクリック時にブラウザを開くのは一斉メッセージと同じです。
  • false … 個別メッセージを表示しません。

_userMessageViewSecond(個別メッセージの表示秒数)

個別メッセージを表示してから、次の表示(アップデート通知や体験版の利用期限)へ切り替わるまでの秒数です。既定は 8(8秒)。

アップデート通知に関する変数

変数型・既定値説明
_useUpdateMessagebool・true新バージョンのお知らせを表示するか
_useUpdateDownloadLinkbool・falseお知らせにダウンロードリンクを付けるか

_useUpdateMessage(アップデートのお知らせ)

新しいバージョンが公開されたときに、利用者のチャートでお知らせするかどうかです。

  • true(既定) … 認証成功後、管理画面に登録された「最新バージョン番号」を取得し、ソースコードの VERSION より新しければ「新しいバージョン ○○ があります。」と表示します。
  • false … バージョンの確認・お知らせを行いません。

お知らせを出すには

お知らせが表示されるのは、管理画面のEA・インジケーター設定で「最新バージョン番号」を、配布済みEAの VERSION より大きい値に更新したときです。バージョンを上げていなければ、true でもお知らせは出ません。

アップデートのお知らせに、ダウンロード先を開くクリックリンクを付けるかどうかです。

  • true … 「新しいバージョンがあります」の下に「ダウンロードするにはここをクリック」を表示します。クリックすると、管理画面のEA設定で登録したダウンロードURLをブラウザで開きます。
  • false(既定) … リンクは表示せず、お知らせのテキストのみになります。

このリンクは _useUpdateMessagetrue で、かつ新しいバージョンが存在するときにのみ表示されます。ダウンロードURLは、管理画面の「EA・インジケーターの管理」でEA編集時の「ダウンロードURL」に設定します。

体験版機能に関する変数

変数型・既定値説明
_useTrialbool・false体験版機能を使うか
_dayint・0体験版の有効日数

_useTrial(体験版機能)

未登録の口座でEA・インジケーターがチャートに挿入されたときに、体験版ユーザーを自動的に作成するかどうかです。

  • true … 未登録の口座でも、_day 日間だけ有効な体験版ユーザーを自動作成して認証を通します。不特定多数への期限付き体験版の配布に使えます。
  • false(既定) … 未登録の口座は認証されません(管理画面で登録済みの利用者のみ利用できます)。

_day(体験版の日数)

_useTrialtrue のときに、自動作成される体験版ユーザーの有効日数です。

  • 例えば _day = 7 なら、体験版の利用期限は挿入日から7日後になります。
  • _useTrial = true にするときは、_day を必ず1以上に設定してください。 0 のままだと、その場で期限切れの体験版になってしまいます。
  • _useTrial = false のときは、この値は使われません。

体験版は「同じ口座で一度だけ」

体験版ユーザーは、同じ口座番号では期限切れ後に再作成できません(使用済みの記録として残ります)。詳しい仕様は「体験版機能」をご覧ください。

ロゴ表示に関する変数

変数型・既定値説明
_useLogobool・falseチャートにロゴを表示するか
_logourlstring・""ロゴをクリックしたときに開くURL

_useLogo(ロゴの表示)

チャートの左下にロゴ画像を表示するかどうかです。

  • trueInclude\Images\logo.bmp を左下に表示します。メッセージの表示位置も、ロゴと重ならないように右へずれます。
  • false(既定) … ロゴを表示しません。

ロゴ画像の準備が必要です

ロゴを表示するには、BMP形式の画像ファイル logo.bmpInclude\Images\ フォルダに配置しておく必要があります。ファイルが無いと表示されません。

_logourl(ロゴのリンク先)

表示したロゴをクリックしたときに開くURLです。自社サイトやSNSなどのURLを設定できます。

  • URLを設定すると、チャート上のロゴをクリックしたときに、そのページをブラウザで開きます。
  • 空欄 ""(既定) … クリックしても何も起きません。
  • この設定は _useLogo = true でロゴが表示されているときに機能します。

MQLAuth マニュアル