Problema con inetget

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
Responder
wiloson
Mensajes: 17
Registrado: 06 Ene 2013, 17:42

Problema con inetget

Mensaje por wiloson »

Bueno muchachos vengo otra vez a molestarlos con una pequeña duda estoy trabajando en un programa que utiliza la funcion inetget todo bien, pero cuando quería crearle una gui no me descargaba los archivos ejemplo

Código: Seleccionar todo

$S=inputbox("link","XD")
InetGet($S,@ScriptDir&"descargado.rar")  
con este metodo funcionaba de lujo pero con una gui mas compleja ejemplo esta no servia :smt017

Código: Seleccionar todo



#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("._.", 417, 141, 295, 124)
$s= GUICtrlCreateInput("", 40, 32, 361, 21)
$Button1 = GUICtrlCreateButton("Empezar", 88, 56, 241, 41)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
			Case $Button1
			cv()
		Case $GUI_EVENT_CLOSE

			Exit

	EndSwitch
WEnd
Func cv ()
InetGet($s,@ScriptDir &"cju.rar")
EndFunc
Aclaro verifico que los links que coloco son de descarga directa

bueno gracias por el tiempo prestado :smt006
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Problema con inetget

Mensaje por Chefito »

Esta línea está mal:
wiloson escribió:InetGet($s,@ScriptDir &"cju.rar")
Tiene varios fallos. Seguramente debería ser así:

Código: Seleccionar todo

InetGet(GUICtrlRead($s),@ScriptDir & "\cju.rar")
GUICtrlRead($s) es para leer el texto que contienen muchos controles, como en este caso el control GUICtrlCreateInput. $s contiene el id del objeto para trabajar con él.

@ScriptDir & "\cju.rar", seguramente te falta la barra invertida. Decirte que si estás en un directorio se la tienes que poner, y si estás en una unidad raíz (ejemplo en c:\), no se la pongas porque la macro @scriptdir te devuelve la ubicación raíz con la barra invertida. Si lo quieres hacer perfecto, tendrías que hacer una función que te detectase si al final de la cadena devuelta hay una barra invertida o no, para ponérsela en el caso que no la haya. Es muy fácil hacerla. Si buscas por el foro códigos ya hechos, seguro que encuentras como hacerlo, pero creo que es más rápido que lo intentes hacer tu :smt002 . Mira en la ayuda la función stringright.

También podrías hacer un tratamiento de errores de la función inetget y lo rizas :smt002 .

Si tienes algún problema sigue preguntando.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
wiloson
Mensajes: 17
Registrado: 06 Ene 2013, 17:42

Re: Problema con inetget

Mensaje por wiloson »

Gracias chefito muy amable por la ayuda ya lo pude solucionar y el problema era de la bara invertida y de guictrlread :smt023
Responder