Errorsys

Post Reply
User avatar
Baxajaun
Posts: 853
Joined: Wed Oct 19, 2005 2:17 pm
Location: Gatika. Bizkaia

Errorsys

Post by Baxajaun »

Buenos días,

se puede evitar la inclusión de errorsys en el ejecutable ?

Muchas gracias.

Saludos
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Errorsys

Post by acuellar »

Baxajaun

Yo no lo uso.

Saludos,

Adhemar
Saludos,

Adhemar C.
User avatar
Baxajaun
Posts: 853
Joined: Wed Oct 19, 2005 2:17 pm
Location: Gatika. Bizkaia

Re: Errorsys

Post by Baxajaun »

Hola,

me refiero a que cuando el programa de error en ejcución no genere el fichero de error ni muestre el error por pantalla.

Muchas gracias.

Saludos,
hmpaquito
Posts: 1200
Joined: Thu Oct 30, 2008 2:37 pm

Re: Errorsys

Post by hmpaquito »

Tienes que redirigir los errores. Creo que se hace con la funcion ErrorBlock().
User avatar
gsabattino
Posts: 100
Joined: Fri Oct 14, 2005 12:03 am
Location: Valencia, Venezuela

Re: Errorsys

Post by gsabattino »

Ilustrisimo Baxajaun...

por medio de la función ErrorBlock puedes deshabilitar el manejador de errores, o redirigirlo a uno propio...

Para deshabilitarlo sería algo así como esto:

Code: Select all

bDefErrHandler:=ErrorBlock( { || NIL } )
y creo que esto también podría funcionar:

Code: Select all

bDefErrHandler:=ErrorBlock( NIL )
o si te interesa redirigirlo a un manejador de errores propio seria algo así como esto

Code: Select all

bDefErrHandler:=ErrorBlock( { | oError | TuManejadorDeError( oError ) } )
bDefErrHandler te guarda la llamada al manejador de errores que estaba antes del cambio de manera que puedas luego restaurarlo de la siguiente manera:

Code: Select all

// Punto donde necesitas que se active tu rutina de manejo de errores en caso de un error
bDefErrHandler:=ErrorBlock( { | oError | TuManejadorDeError( oError ) } )
...
...
tu_codigo...
...
...
// Punto donde restauras la llamada al manejador de errores por defecto de [x]Harbour
ErrorBlock( bDefErrHandler )
...
 
Aca parte de la documentación de Clipper respecto al tema...
Syntax

ERRORBLOCK([<bErrorHandler>]) --> bCurrentErrorHandler

Arguments

<bErrorHandler> is the code block to execute whenever a runtime
error occurs. When evaluated, the <bErrorHandler> is passed an error
object as an argument by the system.

Returns

ERRORBLOCK() returns the current error handling code block. If no error
handling block has been posted since the program was invoked,
ERRORBLOCK() returns the default error handling block.
Ahora... como criterio personal, no creo que sea buena idea eliminar el manejador de errores... de todas formas, como en gusto y colores no existen leyes ni paradigmas, creo que con lo que te he comentado aca deberias poder resolver tu inquietud...

yo, en lo personal, lo que hice fue tomar el archivo source/function/ErrSysW.prg y retocarlo un poco para adaptarlo a mis requerimiento particulares...

Espero te sirva el tip...

Giancarlo Sabattino
Valencia, Venezuela
Post Reply