Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: xassiz_ en 24 Septiembre 2009, 21:22 PM

Título: {Resuelto} [vbs] Duda InputBox
Publicado por: xassiz_ en 24 Septiembre 2009, 21:22 PM
Como podría manejar errores con InputBox?

Por ejemplo, tengo un code que si le da al boton Cancelar salta un error, o si le da a la X de cerrar lo mismo :S


Como podría evitarlo?


PD: que alguien conteste esto (http://foro.elhacker.net/scripting/vbs_dudaas_web_p-t267940.0.html;msg1313441#msg1313441) también!! xD
Título: Re: {vbs} Duda InputBox
Publicado por: Novlucker en 24 Septiembre 2009, 21:30 PM
Los errores? .. igual que en cualquier otro code ... "on error resume next" u "on error goto", o más sencillo, verifica antes el valor que returna el inputbox, para eso tienes IF, o debo de armarte el code?  :-X

Saludos
Título: Re: {vbs} Duda InputBox
Publicado por: xassiz_ en 24 Septiembre 2009, 22:41 PM
u.U nunca vi lo de on error resume next ni on error goto.. :-X

Y como se sabe que valor retorna una funcion? Como se comprueba? :-[
Título: Re: {vbs} Duda InputBox
Publicado por: leogtz en 25 Septiembre 2009, 15:57 PM
Cita de: xassiz en 24 Septiembre 2009, 22:41 PM
u.U nunca vi lo de on error resume next ni on error goto.. :-X

Y como se sabe que valor retorna una funcion? Como se comprueba? :-[

Creo que asignando el InputBox a una variable.
Título: Re: {vbs} Duda InputBox
Publicado por: Novlucker en 25 Septiembre 2009, 16:10 PM
Código (vb) [Seleccionar]
on error resume next

Set objfso = Createobject("Scripting.filesystemobject")
objfso.copyfile "C:\Archivo_inexistente.txt", "D:\"

If err.number <> 0 then
Msgbox err.number & vbnewline & err.description
'Mostramos datos de error
err.clear
'Limpiamos valor de error
End if


Saludos
Título: Re: {vbs} Duda InputBox
Publicado por: xassiz_ en 25 Septiembre 2009, 22:22 PM
A ver si adivino..

Se crea una variable err o algo asi con datos sobre el error que puedes manejar agregando .+cosas ;D

A ver si doy hecho lo que quiero, gracias!  ::)

PD: hay que poner on error resume next al principio del code?
Título: Re: {vbs} Duda InputBox
Publicado por: Novlucker en 26 Septiembre 2009, 03:09 AM
El "On error.." puede ir donde prefieras con eso le dices .. de aquí para abajo revisa los errores, por eso es frecuente ponerlo al principio, eso si .. puede que en ocasiones el resultado varie según este en un sitio u otro  :¬¬

http://foro.elhacker.net/scripting/script_para_obtener_las_subcarpetas_de_las_subcarpetas_de_una_carpeta-t239878.0.html;msg1152917#msg1152917

Saludos
Título: Re: {vbs} Duda InputBox
Publicado por: xassiz_ en 26 Septiembre 2009, 13:16 PM
OK, arreglado..

PD: y el on error goto como funciona? no vi nada de esto en tu manual xd
Título: Re: {vbs} Duda InputBox
Publicado por: Novlucker en 26 Septiembre 2009, 15:16 PM
Ahora que lo pienso .. cuando di la respuesta debería de estar pensando en VB XD

La única posibilidad de este último es On error goto 0, y sirve para deshabilitar la revisión de errores.

Es decir .. tu con On error resume next los activas, y con On error goto 0 lo desactivas, así puedes tener un fragmento de code entre estos dos, y solo lo que esta en medio tiene habilitado esto, lo demás no.

Pseudocódigo:
Código (vb) [Seleccionar]
codigo
mas codigo
'si da un error antes de esto, se "parte" el script

On error resume next
'a partir de aqui, cualquier error que surja pasalo por alto y sigue
se verifican errores
sigue a pesar de errores
On error Goto 0

'de aqui para abajo se vuelve a deshabilitar el tema de los errores
'si hay un error el script se "parte"
codigo
mas codigo


Saludos
Título: Re: {vbs} Duda InputBox
Publicado por: xassiz_ en 26 Septiembre 2009, 15:22 PM
Ok, tema resuelto  :D ;)