Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Прими участие в партнерской программе MQL5 Cloud Network и заработай!
Vitalya Antonov
1378
Vitalya Antonov 2014.07.17 09:46 

Hi all!

Вот код скрипта, который печатает имя окна графика в терминале MetaTrader 4 (например, "EURUSD,M1"):

#import "user32.dll"
   int GetParent(int hWnd);
   int GetWindow(int hWnd, int uCmd);
   int GetWindowTextA(int hWnd, string str, int nMaxCount);
   int GetWindowTextLengthA(int i);
#import

#define GW_CHILD 0x5

void start()
{
   int MDI_handle = GetParent(GetParent(WindowHandle(Symbol(), Period())));
   
   int Chart_board = GetWindow(MDI_handle, GW_CHILD);
   string s = "                             ";
   int nMaxCount = GetWindowTextLengthA(Chart_board);
   GetWindowTextA(Chart_board, s, nMaxCount + 1);
   Print(s);
}

Скрипт работал с билдами старше 2014 года. Но на билдах 2014 года перестал работать - выводятся только пробелы.

Подскажите, пожалуйста, как получить имя окна графика, зная его хэндл.

Alexandre
602
Alexandre 2014.07.17 10:10  
A -> W
Vitalya Antonov
1378
Vitalya Antonov 2014.07.17 10:20  
alexjou:
A -> W

спасибо!

ещё при этом нужно было поставить & перед строкой

/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий