FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Bajar un archivo de www?
Que codigo me podria servir para bajarse un archivo de un servidor web?
|
#2
|
||||
|
||||
Hola Kolokol...
en primer lugar te recomiendo leer la gúia de estilo de los foros, ya que no está de mas ser cordial para preguntar, tomando en cuenta que aqui quienes puedan responder tu pregunta son voluntarios que no reciben ningún tipo de remuneración por hacerlo. En segundo lugar, notarás que has publicado la misma pregunta dos veces. No te preocupes, quizas se trate de un error involuntario y yo ya he eliminado una de las dos; sin embargo debes ser cuidadoso con eso. Tampoco aportas datos suficientes de lo que queres conseguir o cual es tu problema para conseguirlo... por lo que entenderé que "bajarse un archivo" significa obtener una página de un servidor web; lo que podes conseguir limpiamente usando sockets o bien utilizando el método Get del componente TidHTTPClient. En la ayuda de este componente seguramente vas a encontrar información valiosa. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#3
|
||||
|
||||
Otro componente que te puede servir es el WinInet, que publicó una vez la revista síntesis; te lo subo a mi servidor web y te lo descargas desde allí, avísame cuando te lo descarges para no ocupar espacio inecesario.
Te lo he puesto en Zip y Rar para que lo descarges en el formato que prefieras: Formato ZIP Formato RAR Que nadie intente entrar en el dominio, que estoy diseñando la web y no hay nada. Insisto en que me avises cuando descarges el archivo. Muxas gracias
__________________
:) |
#4
|
|||
|
|||
Haber lo que te ha dado dark dide no es el componente wininet, sino que utiliza wininet para descargar el archivo.Con wininet puedes hacer mas cosas desde FTP, etc... el componente se llama si no recuerdo mal idhttpfile.Pero me parece que si tienes delphi 6 en adelante te dara problemas con designintf y todo el follon este.Pero se puede solventar.
Con esta tienes una manera. Otra es: Código:
function Tform1.GetInetFile (const fileURL, FileName: String): boolean; const BufferSize = 1024; var hSession, hURL: HInternet; Buffer: array[1..BufferSize] of Byte; BufferLen: DWORD; f: File; sAppName: string; begin Result:=False; sAppName := ExtractFileName(Application.ExeName); hSession := InternetOpen(PChar(sAppName), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0); try hURL := InternetOpenURL(hSession, PChar(fileURL), nil,0,0,0); try AssignFile(f, FileName); Rewrite(f,1); repeat InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen); BlockWrite(f, Buffer, BufferLen) until BufferLen = 0; CloseFile(f); Result:=True; finally InternetCloseHandle(hURL) end finally InternetCloseHandle(hSession) end end; procedure TForm1.Button1Click(Sender: TObject); var FileOnNet, LocalFileName: string; begin FileOnNet:='http://www.clubdelphi.com/'; LocalFileName:='c:\archivo.htm'; if GetInetFile(FileOnNet,LocalFileName)=True then ShowMessage('Descargado Correctamente') else ShowMessage('Error en la Descarga') end; Ejemplo. Código:
procedure TForm1.Button2Click(Sender: TObject); var stream: Tfilestream; begin stream:= TFileStream.Create('c:\archivo.htm',fmCreate); try idhttp1.Get('http://www.clubdelphi.com/',stream); except stream.Free; ShowMessage('Error en la Descarga'); exit; end; stream.Free; ShowMessage('Descargado Correctamente') end; Pero pueden ser las de las indy en su caso y wininet en los otros Saludos y Suerte
__________________
La victoria tiene cien padres. La derrota es huérfana (Napoleón). |
#5
|
||||
|
||||
Oh, lo siento, es verdad, muxas gracias Descendents!, voy a buscar el componente y lo subiré
__________________
:) |
#6
|
|||
|
|||
Perdon dark dide no,jeje que me equivoque,Perdón.
Quise decirDarkByte Saludos
__________________
La victoria tiene cien padres. La derrota es huérfana (Napoleón). |
#7
|
||||
|
||||
xD, no tiene importancia Descendents; además, ese nick ya es hasta antiguo... me salieron muxa gente que se copió y me busqué uno nuevo... aún sigo usando este en ClubDelphi. Me estoy bajando un par de zips relacionados con WinInet del eMule, a ver si son alguno el componente este y doy ya con la solución.
__________________
:) |
|
|
|