Funkcje sprawdzające:   TerminalInfoInteger()

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.


Przykład 1

#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().