stderror

 

Наткнулся на такую библу. А как ей пользоваться не понял. 

Допустим хочу получить описание ошибки при отправке приказа на покупку. Получаю номер ошибки.  И ? 

 
Dmitiry Ananiev:

Наткнулся на такую библу. А как ей пользоваться не понял. 

Допустим хочу получить описание ошибки при отправке приказа на покупку. Получаю номер ошибки.  И ? 

Ничего нельзя с ней сделать толкового. Некоторые могут писать понятнее

// if (GetLastError() == 5021)                 // вместо этого
if (GetLastError() == ERR_FILE_CANNOT_REWRITE) // писать так

По какой-то причине не сделали через enum. А enum как раз был бы хорошим решением, т.к. есть EnumToString.

 
fxsaber:

Ничего нельзя с ней сделать толкового. Некоторые могут писать понятнее

По какой-то причине не сделали через enum. А enum как раз был бы хорошим решением, т.к. есть EnumToString.


Я думаю, что эта библиотека появилась до того как в мкл появился тип enum и с тех самых пор в ней ни чего не менялось.

 
Dmitiry Ananiev:

Наткнулся на такую библу. А как ей пользоваться не понял. 

Допустим хочу получить описание ошибки при отправке приказа на покупку. Получаю номер ошибки.  И ? 


Это для 4-ки?

#property strict

#include <stderror.mqh>
#include <stdlib.mqh>

// узнает код последней ошибки и возвращает строку с описанием
// код ошибки возвращается, т.к. передается по ссылке
string GetMyLastError(int &err)
{
   err = GetLastError();
   string serr = ErrorDescription(err);
   ResetLastError();
   return(serr);
}

// узнает код последней ошибки и возвращает строку с описанием
string GetMyLastError()
{
   int err = GetLastError();
   string serr = ErrorDescription(err);
   ResetLastError();
   return(serr);
}
Причина обращения: