Этот форум переведен в режим чтения, просим обсуждать вопросы на форумах MQL4.community и MQL5.community

Принудительныя остановка эксперка


К списку тем
avatar
7
KeRneL 23.11.2008 20:13 

Как можно принудительно остановить эксперта в тестере, имею ввиду из самого эксперта, программно.

Покопался в хелпе, не нашел... приходится использовать утилитарную функцию которая делает 'Divide by zero' :)

avatar
21
MaStak 24.11.2008 12:04 

Самое необходимое:

#include <WinUser32.mqh>

void BreakPoint(){
 if (!IsVisualMode()) return(0);
   keybd_event(19,0,0,0);
      Sleep(10);
        keybd_event(19,0,2,0);}

Вызов:

BreakPoint();

Читать тут:

http://articles.mql4.com/ru/203

avatar
7
KeRneL 24.11.2008 19:02 

Спасибо, тоже нужная весчь, btw из той же серии можно послать WM_CHAR, с параметром VK_BREAK окну терминала...


Но, это не то что нужно, я имел ввиду остановить совсем, а не приостановить в режиме визуализации...

Это как аналог ExitProcess() в Win32.

avatar
21
MaStak 24.11.2008 21:16 

а смысл ?

Т.е. "снять" экспа с графика, и в каком случае это бывает необходимо ?

avatar
7
KeRneL 25.11.2008 02:16 
к примеру на тестере, при определённых обстоятельствах не имеет смысла больше тестировать... процент потерь слишком велик, какая-то ошибка обнаружена...
avatar
21
MaStak 25.11.2008 04:16 
т.е. "нажимать" надо не на "паузу" а на "стоп" ?
avatar
7
KeRneL 25.11.2008 15:26 
MaStak :
т.е. "нажимать" надо не на "паузу" а на "стоп" ?
Да, именно! :)
К списку тем  
Скачай MetaTrader 5 (300 Кб, веб-установщик) — новый терминал для финансовых рынков