Справочник MQL4

Состояние клиентского терминала

Идентификаторы для получения информации о клиентском терминале функциями TerminalInfoInteger() и TerminalInfoString(). В качестве параметра эти функции принимают значения из перечислений ENUM_TERMINAL_INFO_INTEGER и ENUM_TERMINAL_INFO_STRING соответственно.

ENUM_TERMINAL_INFO_INTEGER

Идентификатор

Описание

Тип свойства

TERMINAL_BUILD

Номер билда запущенного терминала

int

TERMINAL_COMMUNITY_ACCOUNT

Флаг наличия авторизационных данных MQL5.community в терминале

bool

TERMINAL_COMMUNITY_CONNECTION

Наличие подключения к MQL5.community

bool

TERMINAL_CONNECTED

Наличие подключения к торговому серверу

bool

TERMINAL_DLLS_ALLOWED

Разрешение на использование DLL

bool

TERMINAL_TRADE_ALLOWED

Разрешение на торговлю

bool

TERMINAL_EMAIL_ENABLED

Разрешение на отправку писем с использованием SMTP-сервера и логина,указанных в настройках терминала

bool

TERMINAL_FTP_ENABLED

Разрешение на отправку отчетов по FTP на указанный сервер для указанного в настройках терминала торгового счета

bool

TERMINAL_NOTIFICATIONS_ENABLED

Разрешение на отправку уведомлений на смартфон

bool

TERMINAL_MAXBARS

Максимальное количество баров на графике

int

TERMINAL_MQID

Флаг наличия MetaQuotes ID для отправки Push-уведомлений

bool

TERMINAL_CODEPAGE

Номер кодовой страницы языка, установленного в клиентском терминале

int

TERMINAL_CPU_CORES

Количество процессоров в системе

int

TERMINAL_DISK_SPACE

Объем свободной памяти на диске для папки MQL4\Files терминала, в Mb

int

TERMINAL_MEMORY_PHYSICAL

Размер физической памяти в системе, в Mb

int

TERMINAL_MEMORY_TOTAL

Размер памяти, доступной процессу терминала, в Mb

int

TERMINAL_MEMORY_AVAILABLE

Размер свободной памяти процесса терминала в Mb

int

TERMINAL_MEMORY_USED

Размер памяти, использованной терминалом, в Mb

int

TERMINAL_SCREEN_DPI

Разрешающая способность вывода информации на экран измеряется в количестве точек на линейный дюйм поверхности (DPI).

Знание этого параметра позволяет задавать размеры графических объектов таким образом, чтобы они выглядели одинаково на мониторах с различной разрешающей способностью.

int

TERMINAL_PING_LAST

Последнее известное значение пинга до торгового сервера в микросекундах. В одной секунде миллион микросекунд.

int

Пример вычисления коэффициента масштабирования:

//--- создаём кнопку шириной 1.5 дюйма на экране
int screen_dpi = TerminalInfoInteger(TERMINAL_SCREEN_DPI); // получим DPI монитора пользователя
int base_width = 144;                                      // базовая ширина в экранных точках для стандартных мониторов c DPI=96
int width      = (button_width * screen_dpi) / 96;         // вычислим ширину кнопки для монитора пользователя (с учётом его DPI)
...
 
//--- вычисление коэффициента масштабирования в процентах
int scale_factor=(TerminalInfoInteger(TERMINAL_SCREEN_DPI) * 100) / 96;
//--- использование коэффициента масштабирования
width=(base_width * scale_factor) / 100;

При таком использовании графический ресурс будет иметь одинаковый на глаз размер на мониторах с различной разрешающей способностью. При этом размеры управляющих элементов (кнопки, окна диалогов и т.д.) будут соответствовать настройкам персонализации.

 

ENUM_TERMINAL_INFO_DOUBLE

Идентификатор

Описание

Тип свойства

TERMINAL_COMMUNITY_BALANCE

Баланс пользователя в MQL5.community

double

 

Файловые операции можно проводить только в двух каталогах, пути к которым можно получить при запросе свойств TERMINAL_DATA_PATH и TERMINAL_COMMONDATA_PATH.

ENUM_TERMINAL_INFO_STRING

Идентификатор

Описание

Тип свойства

TERMINAL_LANGUAGE

Язык терминала

string

TERMINAL_COMPANY

Имя компании

string

TERMINAL_NAME

Имя терминала

string

TERMINAL_PATH

Папка, из которой запущен терминал

string

TERMINAL_DATA_PATH

Папка, в которой хранятся данные терминала

string

TERMINAL_COMMONDATA_PATH

Общая папка всех клиентских терминалов, установленных на компьютере

string

Для лучшего понимания путей, хранящихся в свойствах параметров TERMINAL_PATH, TERMINAL_DATA_PATH и TERMINAL_COMMONDATA_PATH, рекомендуется выполнить скрипт, которых сообщит эти значения для данной копии терминала, установленного на вашем компьютере.

Пример: скрипт выводит информацию о путях терминала

//+------------------------------------------------------------------+
//|                                          Check_TerminalPaths.mq5 |
//|                        Copyright 2009, MetaQuotes Software Corp. |
//|                                              https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "2009, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   Print("TERMINAL_PATH = ",TerminalInfoString(TERMINAL_PATH));
   Print("TERMINAL_DATA_PATH = ",TerminalInfoString(TERMINAL_DATA_PATH));
   Print("TERMINAL_COMMONDATA_PATH = ",TerminalInfoString(TERMINAL_COMMONDATA_PATH));
  }

В результате выполнения скрипта в Журнал Экспертов будут выведены сообщения,  подобные приведенным на рисунке ниже.

Получение информации о рабочей папке терминала


История просмотров