複数のMT4でファイルを共有する方法

Terminal¥Common¥Filesフォルダを使う

データフォルダの1つ上の階層にTerminalフォルダがあります。

そこにCommonフォルダ(厳密にはその配下のFilesフォルダ)っていうフォルダがあるのはご存知でしょうか?

これは何かと言いますと、複数のMT4で共有するファイルを置く場所なんですね。

各MT4が管理するファイルはMQL4¥Filesフォルダに置きますが、これの複数MT4版です。

経済指標日ファイルなど、複数のMT4で何らかのファイルを共有したい時に利用します。

プログラムでは次のように書くことで、Terminal¥Common¥Files配下のファイルを参照できるようになります。

string fileName = "参照したいファイル.txt";
int fileHandle = FileOpen(fileName, FILE_SHARE_READ | FILE_COMMON | FILE_TXT);

ポイントはFileOpen関数の2番目の引数「FILE_COMMON」の指定です。

これを書くことでTerminal¥Common¥Filesを参照しにいくようになります。

また、新しいMQL4のオフラインチャートにある通り、ファイルは共有モードで開きましょう。「FILE_SHARE_READ」はそのための指定です。

分かりやすいように以下に引用しておきます。

以前のMQL4では全てのファイルは、共有モードで開かれていたことに留意してください。新しいMQL4では、ファイルを開く時に、共有モードにするには、FILE_SHARE_WRITEとFILE_SHARE_READのフラグを明示的に指定する必要があります。これらがない場合、ファイルの専有者によって閉じられるまで、他の誰かにファイルを開けられないように、排他モードでファイルが開かれます。

FILE_READで開くと排他モードとなり、MT4に限らず他のアプリケーションが開こうとしても排他制御のせいで開けなくなっちゃいますのでご注意ください。

上記のコード例は参照のみの前提ですが、書き込みも行う場合は、「FILE_SHARE_WRITE」も付けましょう。

MT4の無料プログラミング講座

メルマガ登録して、MT4のプログラミング講座を無料で受けちゃおう!

超豪華プレゼントも盛りだくさん♪

MT4プログラミングを習得すると、オリジナルEA運用、作成代行、商品販売等、複数の収入源を手に入れられるよ。副業に最適だね!

↓↓↓ 詳細はこちら ↓↓↓

アイキャッチ

>

エターナル・パートナーPRO ~MT4裁量トレード支援ツール~ 「MT4は裁量トレーダーに優しくない」そう思ったことありませんか?もっと快適にトレードするための強力な売買ツールが必要だと考え、開発したのが「エターナル・パートナーPRO」です。元々は自分自身のために開発したツールですので、手抜き無しのガチものです。既に200名近い方に手に取っていただき、喜びの声が続々と届いております。ぜひご覧ください!

CTR IMG