Примеры: Брейкпойнты в тестере – это возможно! - страница 2

 

У меня получилось нажимать паузу в MT5 двумя способами:

1. Через эмуляцию нажатия пробела из внешнего скрипта, запускаемого через PowerShell

#import "shell32.dll"
int ShellExecuteW(int hwnd, string operation, string file, string parameters, string directory, int showCmd);
#import

Pause()
{
ShellExecuteW(NULL, "open", "PowerShell.exe", "cd c:\;.\EmulationSpaceKey.vbs", NULL, 0);
}

Для эмуляции клавиши пробел (" ") на диске C:\ создать файл EmulationSpaceKey.vbs следующего содержания:

Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.SendKeys " "

Set WshShell = Nothing

Разрешить импорт DLL, держать окно визуального тестера раскрытым, либо дописать в WScript смену фокуса ввода на окно тестера.


2. Через https://www.mql5.com/ru/docs/common/debugbreak

Pause()
{
 DebugBreak();
}

Запускать на тестирование из редактора в режиме отладки

Документация по MQL5: Общие функции / DebugBreak
Документация по MQL5: Общие функции / DebugBreak
  • www.mql5.com
Программная точка останова при отладке. Возвращаемое значение Нет возвращаемого значения. Примечание Прерывание выполнения mql5-программы...