Funkcja int TerminalInfoInteger() zwraca wartość odpowiedniej właściwości otoczenia programu MQL4. Identyfikator właściwości może być jednym z wartości ENUM_TERMINAL_INFO_INTEGER . Więcej informacji można znaleźć w specyfikacji MQL4.
#property strict void OnStart() { //--- numer bilda uruchomionego terminala Print("1) TerminalInfoInteger(TERMINAL_BUILD) = ", TerminalInfoInteger(TERMINAL_BUILD)); //--- flaga wskazująca na obecność danych autoryzacyjnych MQL5.community w terminalu Print("2) TerminalInfoInteger(TERMINAL_COMMUNITY_ACCOUNT) = ", (bool)TerminalInfoInteger(TERMINAL_COMMUNITY_ACCOUNT)); //--- połączenie z MQL5.community Print("3) TerminalInfoInteger(TERMINAL_COMMUNITY_CONNECTION) = ", (bool)TerminalInfoInteger(TERMINAL_COMMUNITY_CONNECTION)); //--- połączenie z serwerem handlowym Print("4) TerminalInfoInteger(TERMINAL_CONNECTED) = ", (bool)TerminalInfoInteger(TERMINAL_CONNECTED)); //--- pozwolenie na stosowanie DLL Print("5) TerminalInfoInteger(TERMINAL_DLLS_ALLOWED) = ", (bool)TerminalInfoInteger(TERMINAL_DLLS_ALLOWED)); //--- pozwolenie na handel Print("6) TerminalInfoInteger(TERMINAL_TRADE_ALLOWED) = ", (bool)TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)); //--- pozwolenie na wysyłanie wiadomości e-mail //--- za pomocą serwera SMTP i loginu, określonego w ustawieniach terminala Print("7) TerminalInfoInteger(TERMINAL_EMAIL_ENABLED) = ", (bool)TerminalInfoInteger(TERMINAL_EMAIL_ENABLED)); //--- pozwolenie na wysyłanie raportów //--- za pomocą serwera FTP i loginu, określonego w ustawieniach terminala. Print("8) TerminalInfoInteger(TERMINAL_FTP_ENABLED) = ", (bool)TerminalInfoInteger(TERMINAL_FTP_ENABLED)); //--- pozwolenie na wysyłanie powiadomień na smartfon Print("9) TerminalInfoInteger(TERMINAL_NOTIFICATIONS_ENABLED) = ", (bool)TerminalInfoInteger(TERMINAL_NOTIFICATIONS_ENABLED)); //--- maksymalna ilość świec (barów) na wykresie notowań Print("10) TerminalInfoInteger(TERMINAL_MAXBARS) = ", TerminalInfoInteger(TERMINAL_MAXBARS)); //--- flaga wskazująca na obecność MetaQuotes ID do wysyłania wiadomości Push Print("11) TerminalInfoInteger(TERMINAL_MQID) = ", (bool)TerminalInfoInteger(TERMINAL_MQID)); //--- strona kodowa języka zainstalowanego w terminalu MetaTrader 4 int CodePage = TerminalInfoInteger(TERMINAL_CODEPAGE); switch(CodePage) { case CP_ACP: Print("12) TerminalInfoInteger(TERMINAL_CODEPAGE) = Windows ANSI"); break; case CP_OEMCP: Print("12) TerminalInfoInteger(TERMINAL_CODEPAGE) = OEM"); break; case CP_MACCP: Print("12) TerminalInfoInteger(TERMINAL_CODEPAGE) = CP_MACCP"); break; case CP_THREAD_ACP: Print("12) TerminalInfoInteger(TERMINAL_CODEPAGE) = Windows ANSI dla bieżącego potoku"); break; case CP_SYMBOL: Print("12) TerminalInfoInteger(TERMINAL_CODEPAGE) = Symbol"); break; case CP_UTF7: Print("12) TerminalInfoInteger(TERMINAL_CODEPAGE) = UTF-7"); break; case CP_UTF8: Print("12) TerminalInfoInteger(TERMINAL_CODEPAGE) = UTF-8"); break; } //--- liczba rdzeni procesora Print("13) TerminalInfoInteger(TERMINAL_CPU_CORES) = ", TerminalInfoInteger(TERMINAL_CPU_CORES)); //--- wolne miejsce na dysku dla foldera MQL4\Files terminala MetaTrader 4, w Mb Print("14) TerminalInfoInteger(TERMINAL_DISK_SPACE) = ", TerminalInfoInteger(TERMINAL_DISK_SPACE)," Mb"); //--- pamięć fizyczna w systemie, Mb Print("15) TerminalInfoInteger(TERMINAL_MEMORY_PHYSICAL) = ", TerminalInfoInteger(TERMINAL_MEMORY_PHYSICAL)," Mb"); //--- pamięć, która jest dostępna procesowi terminala MetaTrader 4, Mb Print("16) TerminalInfoInteger(TERMINAL_MEMORY_TOTAL) = ", TerminalInfoInteger(TERMINAL_MEMORY_TOTAL)," Mb"); //--- wolna pamięć procesu terminala, Mb Print("17) TerminalInfoInteger(TERMINAL_MEMORY_AVAILABLE) = ", TerminalInfoInteger(TERMINAL_MEMORY_AVAILABLE)," Mb"); //--- pamięć używana przez terminal, Mb Print("18) TerminalInfoInteger(TERMINAL_MEMORY_USED) = ", TerminalInfoInteger(TERMINAL_MEMORY_USED)," Mb"); //--- rozdzielczość wyświetlanej informacji na ekranie, DPI (liczba punktów w linii na cal) Print("19) TerminalInfoInteger(TERMINAL_SCREEN_DPI) = ", TerminalInfoInteger(TERMINAL_SCREEN_DPI)," DPI"); //--- ostatnia znana wartość pingu do serwera handlowego, mikrosekundy (1 sekunda = 1000000 mikrosekund) Print("20) TerminalInfoInteger(TERMINAL_PING_LAST) = ", TerminalInfoInteger(TERMINAL_PING_LAST)," mikrosekund"); }
Rys. 1. Przykłady stosowania funkcji TerminalInfoInteger().