se ve que cada función devuelve false o -1 si falla.
eso es lo que debes usar.
¡Es cierto! Ni siquiera había pensado en eso... porque hay una manera aún mejor, como yo :) puedo escribir funciones complejas que generan sus propios códigos de error.
La función GetLastError() se reinicia después de leer su valor. Inserte una lectura vacía adicional antes de la operación que desee.
Esa es la cuestión, no quiero poner una lectura antes de la operación requerida cada vez... Tengo todas las operaciones que necesito, así que tengo que hacer GetLastError en la línea:)
Esa es la cuestión: no quiero poner una lectura antes de la operación requerida cada vez... Tengo todas las operaciones que necesito, así que tengo que hacer GetLastError en la línea:)
Entonces no está claro cómo quieres que funcione tu nueva función. ¿Cómo podría actualizarse por el tiempo o por cualquier otro signo?
Me gustaría leer y escribir una variable especial last_error. Manejado el error, puesto a cero - no manejado - el código de error llega al final del programa y se detecta allí.
OrderSend(...);
if (GetError()==конкретный номер){
// код обработки сброс ошибки или наоборот
SetError(0);
}
elseif(...)
...
...
// и в конце программыif (GetError()) >0){
// гдето необработанное исключение или ошибка номер...// просто сообщение об ошибке
}
Sin ánimo de ofender, esto también es un error.
Lo que hay que controlar es el error de la operación: es decir, lo que devuelve OrderSend (...) y sólo entonces, si es necesario, llamar a GetLastError().
Así es, funciona como se pretende :) Pero no te ofendas, he mirado tus códigos y no he encontrado ninguna llamada a GetLastError()... La primera mosca que atraviese la ventana destruirá la civilización :)
Así es, funciona como se pretende :) Pero no te ofendas, he mirado tus códigos y no he encontrado ninguna llamada a GetLastError() ... La primera mosca que atraviese la ventana destruirá la civilización :)
Y mira donde escribí sobre el manejo de errores - hay hilos en el foro ;)
No, lo escribo así:
en este caso también está mal.
se ve que cada función devuelve false o -1 si falla.
eso es lo que se usa.
Echo de menos esta función en MT4, ¿qué debo hacer?
La función GetLastError( ) se reinicia después de leer su valor. Inserte una lectura extra en blanco antes de la operación que desee.
en este caso también está mal.
se ve que cada función devuelve false o -1 si falla.
eso es lo que debes usar.
¡Es cierto! Ni siquiera había pensado en eso... porque hay una manera aún mejor, como yo :) puedo escribir funciones complejas que generan sus propios códigos de error.
La función GetLastError() se reinicia después de leer su valor. Inserte una lectura vacía adicional antes de la operación que desee.
Esa es la cuestión, no quiero poner una lectura antes de la operación requerida cada vez... Tengo todas las operaciones que necesito, así que tengo que hacer GetLastError en la línea:)
Esa es la cuestión: no quiero poner una lectura antes de la operación requerida cada vez... Tengo todas las operaciones que necesito, así que tengo que hacer GetLastError en la línea:)
Entonces no está claro cómo quieres que funcione tu nueva función. ¿Cómo podría actualizarse por el tiempo o por cualquier otro signo?
No, lo escribo así:
Sin ánimo de ofender, esto también es un error.
Lo que hay que controlar es el error de la operación: es decir, lo que devuelve OrderSend (...) y sólo entonces, si es necesario, llamar a GetLastError().
Así es, funciona como se pretende :) Pero no te ofendas, he mirado tus códigos y no he encontrado ninguna llamada a GetLastError()... La primera mosca que atraviese la ventana destruirá la civilización :)
Así es, funciona como se pretende :) Pero no te ofendas, he mirado tus códigos y no he encontrado ninguna llamada a GetLastError() ... La primera mosca que atraviese la ventana destruirá la civilización :)