Errori, bug, domande - pagina 393

 
Interesting:
Quale?
1) dopo aver chiamato NormalizeDouble() - 0,0, ma in forma pura 4,243991582918676e-314

L'ho provato su un paio di indicatori. entrambi funzionavano bene, ora no.

2) ci sono spesso problemi quando si cerca di eseguire il test con la connessione ai core (funziona con l'ennesima esecuzione). vedi l'immagine.

TheXpert:
Un gruppo di telepati sta già esaminando il tuo problema.

non c'è bisogno di essere un telepate per capire che iCustom() non funziona come dovrebbe.

per testarlo, potete eseguire il codice dell'Expert Advisor:
doppio buffer[];
ResetLastError();
int MA_handle = iCustom(NULL, 0, "Examples\Custom Moving Average", 21, 0, MODE_SMMA);
//int MA_handle = iMA(NULL, 0, 21, 0, MODE_SMMA, PRICE_MEDIAN);
Print("MA_handle = ", MA_handle, " error = ", GetLastError());
int copy = CopyBuffer(MA_handle, 0, 0, 5, buffer);
if (copy == -1) Print("Failed to get Custom Moving Average indicator");
else
for (int i = 0; i < 5; i++) Print("buffer[", i, "] = ", buffer[i];

e verrà visualizzato il messaggio "Failed to get Custom Moving Average indicator values".

Cioè, CopyBuffer dà un errore (restituisce -1) per la maniglia dell'indicatore iCustom(). Se prendiamo l'indicatore standard iMA(), lo stesso codice funziona!

Urain:
Guardate la direzione di indicizzazione dell'array risultante, forse ha bisogno di essere espansa.

tutto va bene con la direzione di indicizzazione e nelle build precedenti questo funzionava anche. nella 448 e 450 non funzionava.
Ho suggerito molte volte che gli sviluppatori dovrebbero testare più a fondo la funzionalità principale del terminale,
ma da una build all'altra ottengono diversi errori critici invece di quelli critici.
Cioè una cosa viene aggiustata e un'altra cosa che normalmente funzionava si rompe e non c'è una fine in vista.

 
MONTEGRO:

Lo slittamento prima di copiare i dati, richiede tempo per calcolare l'indicatore, quindi anche se la maniglia ritorna correttamente, i dati non sono ancora stati calcolati,

In generale, si raccomanda di chiamare gli indicatori nell'inite, e richiedere i dati già in OnTick() o altre funzioni speciali.

    double buffer[];
    ResetLastError();
    int MA_handle = iCustom(NULL, 0, "Examples\\Custom Moving Average", 21, 0, MODE_SMMA);
    //int MA_handle = iMA(NULL, 0, 21, 0, MODE_SMMA, PRICE_MEDIAN);
    Print("MA_handle = ", MA_handle, "  error = ", GetLastError());
Sleep(100);
    int copy = CopyBuffer(MA_handle, 0, 0, 5, buffer);
    if (copy == -1) Print("Неудачная попытка получить значения индикатора Custom Moving Average");
    else
      for (int i = 0; i < 5; i++) Print("buffer[", i, "] = ", buffer[i]); 

di nuovo, copi 5 dati dalla barra zero, ma nel copybuffer la barra zero è da qualche parte intorno al 1970 (dipende dalle impostazioni della barra massima), ecco perché ho detto di guardare l'indicizzazione dell'array.

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 
Urain:

Lo slittamento prima di copiare i dati, richiede tempo per calcolare l'indicatore, quindi anche se la maniglia ritorna correttamente, i dati non sono ancora stati calcolati.

Sleep(1000); // 1 secondo dopo aver chiamato iCustom() ha aiutato, MA. Dovrei ora prendere il tempo di ritardo? Come faccio a sapere quanto tempo ci vorrà per il processo di calcolo?
è sbagliato dare la maniglia corretta dell'indicatore che punta alla spazzatura! e deve aver funzionato correttamente prima perché non c'era questo problema.

Urain:

in generale, si raccomanda di chiamare gli indicatori nell'initis, e chiedere i dati già in OnTick() o altre funzioni speciali.

Questo è un buon consiglio per me, grazie ) perché se avessi fatto così, non avrei visto il problema...

Di nuovo stai copiando 5 dati dalla barra zero, ma in copyBuffer la barra zero è da qualche parte intorno al 1970 (dipende dalle impostazioni della barra massima), ecco perché ho detto di guardare l'indicizzazione dell'array.

Per quanto ho capito dalla documentazione di aiuto, in CopyBuffer() la barra zero è in realtà "tempo presente", e già quando la copi, l'array è espanso.

 
MONTEGRO:

Sleep(1000); // 1 sec. dopo aver chiamato iCustom() ha aiutato, MA... Dovrei ora prendere il tempo di ritardo? Come faccio a sapere quanto tempo impiegherà il processo di calcolo?
è sbagliato dare la maniglia corretta dell'indicatore che indica la spazzatura! e deve aver funzionato correttamente prima, perché non c'era questo problema.


Non è necessario regolare il tempo di ritardo per la funzione Sleep(), se si divide per tempo la chiamata iCustom e l'accesso ai valori di questo indicatore. Inoltre, c'è la funzione BarsCalculated()
 

Le seguenti opzioni dell'indicatore (cerchiate in rosso) possono essere impostate programmaticamente?


Non ho trovato un modo per farlo.

 

Non so se questo è un bug, ma penso che ci siano errori nel codice delle librerie per tutti i tipi di muvings (SignalFrAMA, SignalAMA, SignalMA, SignalDEMA, SignalTEMA) per il master, vediCSignalTEMA::ShortCondition()

//| "Voting" that price will grow.                                   |
//| INPUT:  no.                                                      |
//| OUTPUT: number of "votes" that price will grow.                  |
//| REMARK: no.                                                      |
//+------------------------------------------------------------------+
int CSignalTEMA::LongCondition()
  {
   int result=0;
   int idx   =StartIndex();
//--- analyze positional relationship of the close price and the indicator at the first analyzed bar
   if(DiffCloseMA(idx)<0.0)
     {
      //--- the close price is below the indicator
      if(IS_PATTERN_USAGE(1) && DiffOpenMA(idx)>0.0 && DiffMA(idx)>0.0)
        {
         //--- the open price is above the indicator (i.e. there was an intersection), but the indicator is directed upwards
         result=m_pattern_1;
         //--- consider that this is an unformed "piercing" and suggest to enter the market at the current price
         m_base_price=0.0;
        }
     }
   else
     {
      //--- the close price is above the indicator (the indicator has no objections to buying)
      if(IS_PATTERN_USAGE(0))
         result=m_pattern_0;
      //--- if the model 2 is used
      if(IS_PATTERN_USAGE(2) && DiffMA(idx)>0.0)
        {
         //--- the indicator is directed upwards
         if(DiffOpenMA(idx)<0.0)
           {
            //--- the open price is below the indicator (i.e. there was an intersection)
            result=m_pattern_2;
            //--- suggest to enter the market at the "roll back"
            m_base_price=m_symbol.NormalizePrice(MA(idx));
           }
         else
           {
            //--- the open price is above the indicator
            if(DiffLowMA(idx)<0.0)
              {
               //--- the low price is below the indicator
               result=m_pattern_2;
               //--- consider that this is a formed "piercing" and suggest to enter the market at the current price
               m_base_price=0.0;
              }
           }
        }
     }
//--- return the result
   return(result);
  }
//+------------------------------------------------------------------+
//| "Voting" that price will fall.                                   |
//| INPUT:  no.                                                      |
//| OUTPUT: number of "votes" that price will fall.                  |
//| REMARK: no.                                                      |
//+------------------------------------------------------------------+
int CSignalTEMA::ShortCondition()
  {
   int result=0;
   int idx   =StartIndex();
//--- analyze positional relationship of the close price and the indicator at the first analyzed bar
   if(DiffCloseMA(idx)>0.0)
     {
      //--- the close price is above the indicator
      if(IS_PATTERN_USAGE(1) && DiffOpenMA(idx)<0.0 && DiffMA(idx)<0.0)
        {
         //--- the open price is below the indicator (i.e. there was an intersection), but the indicator is directed downwards
         result=m_pattern_1;
         //--- consider that this is an unformed "piercing" and suggest to enter the market at the current price
         m_base_price=0.0;
        }
     }
   else
     {
      //--- the close price is below the indicator (the indicator has no objections to buying)
      if(IS_PATTERN_USAGE(0))
         result=m_pattern_0;
      //--- if the model 2 is used
      if(IS_PATTERN_USAGE(2) && DiffMA(idx)<0.0)
        {
         //--- the indicator is directed downwards
         if(DiffOpenMA(idx)<0.0)---------------------------------------->ДОЛЖЕН БЫТЬ ЗНАК "БОЛЬШЕ"!!!
           {
            //--- the open price is above the indicator (i.e. there was an intersection)
            result=m_pattern_2;
            //--- suggest to enter the market at the "roll back"
            m_base_price=m_symbol.NormalizePrice(MA(idx));
           }
         else
           {
            //--- the open price is below the indicator
            if(DiffHighMA(idx)>0.0)
              {
               //--- the high price is above the indicator
               result=m_pattern_2;
               //--- consider that this is a formed "piercing" and suggest to enter the market at the current price
               m_base_price=0.0;
              }
           }
        }
     }
//--- return the result
   return(result);
  }

Anche nella libreria SignalMA in

int CSignalMA::ShortCondition()
  {
   .......
   //--- analyze positional relationship of the close price and the indicator at the first analyzed bar
   if(DiffCloseMA(idx)>0.0)
     {
      .......
     }
   else
     {
      //--- the close price is below the indicator (the indicator has no objections to buying)
      if(IS_PATTERN_USAGE(0))
         result=m_pattern_0;
      //--- if the model 2 is used

То что ниже не корректно:
      if(DiffMA(idx)<0.0)
        {
         //--- the indicator is directed downwards
         if(IS_PATTERN_USAGE(2) && DiffOpenMA(idx)<0.0)
          {
           .....
          }
Последние 2 условия должны выглядеть так: 
      if(IS_PATTERN_USAGE(2) && DiffMA(idx)<0.0)
        {
         //--- the indicator is directed downwards
         if(DiffOpenMA(idx)>0.0)
           {
            .....
           }
 
52_rus:

Non so se questo è un bug, ma penso che ci siano errori nel codice delle librerie per tutti i tipi di muvings (SignalFrAMA, SignalAMA, SignalMA, SignalDEMA, SignalTEMA) per il master, vedi CSignalTEMA::ShortCondition()

Anche nella libreria SignalMA in

Grazie mille. Sarà corretto. (Dannato copia-incolla)
 
/i:<percorso della cartella MQL5>.

Indicare la linea completa della chiamata.
 
mql5:
/i:<percorso della cartella MQL5>.

Dare la stringa di chiamata completa.

Ecco tutte le opzioni provate:

GS      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
CR      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include\InstallerTestInclude
CF      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include
IM      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5
HG      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D
ME      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
MM      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include\InstallerTestInclude
EP      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include
CG      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5
JD      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)
FN      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
DJ      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5\Include\InstallerTestInclude
ND      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5\Include
JP      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5
IR      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \
LH      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
PH      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5\Include\InstallerTestInclude
LE      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5\Include
RJ      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5
CP      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: 
OS      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include\InstallerTestInclude
OG      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include
EN      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5
DF      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D
GG      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include\InstallerTestInclude
OM      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include
ML      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5
DO      0       sInstallerInstall (EURUSD,H1)   06:54:32        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)
KR      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
CD      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include\InstallerTestInclude
CD      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include
ML      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5
PQ      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D
MG      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
IS      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include\InstallerTestInclude
QQ      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include
CQ      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5
NR      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)
RO      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
PK      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5\Include\InstallerTestInclude
NR      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5\Include
RQ      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \MQL5
ID      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: \
DG      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh
DK      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5\Include\InstallerTestInclude
HD      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5\Include
RH      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: MQL5
OR      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: 
GE      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include\InstallerTestInclude
GE      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include
QM      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5
DP      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D
OD      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include\InstallerTestInclude
GO      0       sInstallerInstall (EURUSD,H1)   06:54:52        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5\Include
JN      0       sInstallerInstall (EURUSD,H1)   06:54:53        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)\MQL5
CM      0       sInstallerInstall (EURUSD,H1)   06:54:53        D:\Program Files\MetaTrader 5 (A)\mql5.exe D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.mq5 /i: D:\Program Files\MetaTrader 5 (A)

Dopo ogni tentativo, è stato effettuato un controllo per vedere se il file esisteva nel percorso

D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Scripts\sInstallerTestScript.ex5

L'intruso sul sentiero

D:\Users\Дмитрий\AppData\Roaming\MetaQuotes\Terminal\44 D6FB562C883F0C70690F3306A3851D\MQL5\Include\InstallerTestInclude\IncInstallerTest.mqh

esiste.

Il controllo dell'esistenza è stato eseguito dalla funzione:

      bool CheckExists(string aPath){
         uchar ucArr1[];
         StringToCharArray(aPath,ucArr1); 
         if(GetFileAttributesA(ucArr1)>0)return(true);
         return(false);
      }