Erreurs, bugs, questions - page 393

 
Interesting:
Laquelle ?
1) après avoir appelé NormalizeDouble() - 0.0, mais sous forme pure 4.243991582918676e-314

J'ai essayé sur deux indicateurs. Les deux fonctionnaient bien, mais plus maintenant.

2) il y a souvent des problèmes lorsqu'on essaie de tester le run avec la connexion aux cores (fonctionne au nième run). voir l'image.

LeXpert:
Un groupe de télépathes se penche déjà sur votre problème.

Il n'est pas nécessaire d'être télépathe pour comprendre que la fonction iCustom() ne fonctionne pas comme elle le devrait.

pour le tester, vous pouvez exécuter le code de l'Expert Advisor :
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()) ;
int copy = CopyBuffer(MA_handle, 0, 0, 5, buffer) ;
if (copy == -1) Print("Failed to get Custom Moving Average indicator") ;
sinon
for (int i = 0 ; i < 5 ; i++) Print("buffer[", i, "] = ", buffer[i] ;

et le message "Failed to get Custom Moving Average indicator values" s'affiche.

i.e., CopyBuffer donne une erreur (retourne -1) pour le handle de l'indicateur iCustom(). si nous prenons l'indicateur standard iMA(), le même code fonctionne !

Urain:
Regardez la direction d'indexation du tableau résultant, peut-être doit-il être étendu.

tout va bien avec la direction de l'indexation et dans les versions précédentes cela fonctionnait aussi. en 448 et 450 cela ne fonctionnait pas.
J'ai suggéré à plusieurs reprises que les développeurs devraient tester la fonctionnalité principale du terminal de manière plus approfondie,
mais de build en build ils obtiennent des erreurs critiques différentes au lieu de critiques.
C'est-à-dire qu'une chose est réparée et qu'une autre qui fonctionnait normalement se casse et qu'il n'y a pas de fin en vue.

 
MONTEGRO:

Le glissement avant la copie des données, il faut du temps pour calculer l'indicateur, donc même si la poignée revient correctement, les données n'ont pas encore été calculées,

En général, il est recommandé d'appeler les indicateurs dans l'inite, et de demander les données déjà dans OnTick() ou d'autres fonctions spéciales.

    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]); 

Encore une fois, vous copiez 5 données à partir de la barre zéro, mais dans le tampon de copie, la barre zéro est quelque part autour de 1970 (dépend des paramètres de la barre maximale), c'est pourquoi j'ai dit de regarder l'indexation du tableau.

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

Le glissement avant la copie des données, il faut du temps pour calculer l'indicateur, donc bien que la poignée revienne correctement, les données n'ont pas encore été calculées.

Sleep(1000) ; // 1 sec après avoir appelé iCustom() a aidé, MAIS. Dois-je prendre le temps de retard maintenant ? Comment puis-je savoir combien de temps le processus de calcul va prendre ?
c'est une erreur de donner la poignée d'indicateur correcte pointant vers des déchets ! et cela devait fonctionner correctement avant car il n'y avait pas de tel problème.

Urain:

en général, il est recommandé d'appeler les indicateurs dans les initiales, et de demander les données déjà dans OnTick() ou d'autres fonctions spéciales.

C'est un bon conseil pour moi, merci ) car si j'avais fait comme ça, je n'aurais pas vu le problème....

Encore une fois, vous copiez 5 données de la barre zéro, mais dans copyBuffer la barre zéro est quelque part autour de 1970 (dépend des paramètres de la barre maximale), c'est pourquoi j'ai dit de regarder l'indexation du tableau.

D'après ce que j'ai compris de la documentation d'aide, dans CopyBuffer() la barre zéro est en fait "le temps présent", et déjà quand vous le copiez, le tableau est étendu.

 
MONTEGRO:

Sleep(1000) ; // 1 sec. après avoir appelé iCustom() a aidé, MAIS... Comment puis-je savoir combien de temps le processus de calcul va prendre ?
c'est une erreur de donner la poignée d'indicateur correcte indiquant les déchets ! et cela devait fonctionner correctement avant, car il n'y avait pas un tel problème.


Vous n'avez pas besoin d'ajuster le délai de la fonction Sleep(), si vous divisez par le temps l'appel iCustom et l'accès aux valeurs de cet indicateur. En outre, il existe la fonction BarsCalculated()
 

Les options suivantes de l'indicateur (encerclées en rouge) peuvent-elles être définies par programme ?


Je n'ai pas trouvé de moyen de le faire.

 

Je ne sais pas si c'est un bug, mais je pense qu'il y a des erreurs dans le code des bibliothèques pour tous les types de manœuvres (SignalFrAMA, SignalAMA, SignalMA, SignalDEMA, SignalTEMA) pour le maître, voirCSignalTEMA::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);
  }

Également dans la bibliothèque SignalMA dans

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:

Je ne sais pas si c'est un bug, mais je pense qu'il y a des erreurs dans le code des bibliothèques pour tous les types de manœuvres (SignalFrAMA, SignalAMA, SignalMA, SignalDEMA, SignalTEMA) pour le maître, voir CSignalTEMA::ShortCondition()

Également dans la bibliothèque SignalMA dans

Merci beaucoup. Sera corrigé. (Maudit copié-collé)
 
/i:<chemin du dossier MQL5>.

Donnez la ligne complète de l'appel.
 
mql5:
/i:<chemin du dossier MQL5>.

Donnez la chaîne d'appel complète.

Voici toutes les options essayées :

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)

Après chaque tentative, une vérification a été effectuée pour voir si le fichier existait sur le chemin

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

L'intrus sur le chemin

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

existe.

Le contrôle d'existence a été effectué par la fonction :

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