インジケータが鳴ったらLINE通知をしたいと思い
下記のようなロジックを考えました
ログから文字列を取得
指定した文字列と比較して入っていればLINE通知
ログを取得するのに下記のサイトを参考にして
http://paopao46.blog34.fc2.com/blog-entry-260.html
色々と試したのですが、使い方が間違っているのか?そもそもこのdllでは文字列は取得出来ないのか?助けて頂きたく質問させていただきます
問題点
GetLogData関数でテキストを取得できるっぽいとおもって
string data= GetLogData(LogHandle, 1, Buff, BUFF_SIZE);
Print(data);
上記のようなコードを作っても文字列ではなく、数値(バッファーサイズ?)が帰ってくるだけでした
そもそもこのdllは文字列を取得出来ないのでしょうか?それとも私の使い方が間違っているのでしょうか?
教えて頂けると助かります
また、他の方法でログ監視が出来るなど有りましたら教えていただけると幸いです
mql
1 2 3//Expertsログウィンドウを探すためのキーワード 4extern string Keyword = "If a body catch a body comin' through the rye"; 5 6//行読み取りバッファ・・・できるだけ長い文字列で初期化する 7static string Buff = "****************... "; //実際には256文字埋める 8 9//Buffの長さを定義 10#define BUFF_SIZE 256 11 12int LogHandle = 0; 13int init() 14{ 15 //探索用にキーワードを出力 16 Print(Keyword); 17} 18int start() 19{ 20 if(LogHandle == 0){ 21 //ハンドルが未取得なら取得する 22 LogHandle = FindLogHandle(WindowHandle(Symbol(), Period()), Keyword); 23 if(LogHandle <= 0){ 24 Print(Keyword); //探索用キーワードを再出力 25 return(0); 26 } 27 } 28 29 //ログの行数を調べる 30 if(GetLogRowCount(LogHandle) > 0){ 31 //先頭行のログを取得する 32 if(GetLogData(LogHandle, 1, Buff, BUFF_SIZE) > 0) 33 Comment(Buff); //コメントに表示 34 } 35 36 return(0); 37}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。