Fórum Como baixar arquivos da Internet com Delphi ???? #183958
24/09/2003
0
Bem, estou desenvolvendo um sistema onde eu preciso via delphi baixar um arquivo com extensao : *.TXT que se encontra em um provedor de hospedagem e gostaria de saber se alguem poderia me ajudar ou até mesmo se alguem tiver um exemplo basico somente para que eu possa concluir este módulo.
Eu estou tentando com os componentes INDY mas ainda não obtive sucesso...
Neste caso eu terei um botao que ao dispara-lo ele por traz da aplicação vai buscar este TXT na internet e copia-lo para uma pasta parametrizada.
Se alguem puder me ajudar com algum material ficarei muito agradecido.
Obrigado,
Everson
Everson
Curtir tópico
+ 1Post mais votado
24/09/2003
implementation
{$R *.dfm}
uses WinInet; //-->>> IMPORTANTE
function DownloadArquivo(const Origem, Destino: 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(Origem),
nil,0,0,0);
try
AssignFile(f, Destino);
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 Origem, Destino: string;
begin
Origem := ´http://www.salesiano.com.br/egama/3OF9.TTF´;
Destino := ´e:\tmp\3OF9.TTF´;
if DownloadArquivo(Origem, Destino) then
ShowMessage(´Download OK´)
else
ShowMessage(´Erro no download´)
end;
E_gama
Gostei + 1
Mais Posts
24/09/2003
Mandachuva
procedure TForm1.Button1Click(Sender: TObject);
var ARQ:TFIleStream;
NomeDoArq:STRING;
begin
NomeDoArq:=´C:\BAU\BancoOO.zip´;
try
ARQ:=TFILESTREAM.Create(NomeDoArq,fmCreate OR fmShareExclusive);
idHTTP1.Get(´http://www.clubedelphi.com.br/apostilas/´+EXTRACTFILENAME(NomeDoArq),ARQ);
finally
ARQ.Free;
end;
end;
Gostei + 1
24/09/2003
Adriano Santos
UrlMon;[/b:8fc4ecb613]
function DownloadFile(Source, Dest: string): Boolean;
begin
try
Result:= UrlDownloadToFile(nil, PChar(source),PChar(Dest), 0, nil) = 0;
except
Result:= False;
end;
end;
Ex.:
if DownloadFile (´http://www.onde.com/arq.htm´,´c:\arq.htm´) then
ShowMessage(´Download Concluído.´);
Gostei + 1
04/11/2003
Analyst
[b:33f5b49870][u:33f5b49870]Caro amigo eu fiz o que você sugeriu, mas tem algo estranho!!
Eu mudei o endereço da internet (origem), e não é que a funçào está retornando TRUE....ai eu deletei o arquivo do endereço de origem e ela voltou a retornar True...
O que poderia estar faltando, todas as dicas nesse forum estão assim
Me ajude galera[/u:33f5b49870][/b:33f5b49870]
Gostei + 1
06/09/2005
Dcpleal
AssignFile(f, Destino);
Rewrite(f,1);
esta dando erro de ´I/O Error 32´
sabe me dizer porque?
Gostei + 0
06/09/2005
Martins
[b:0f7174f709][u:0f7174f709]Caro amigo eu fiz o que você sugeriu, mas tem algo estranho!!
Eu mudei o endereço da internet (origem), e não é que a funçào está retornando TRUE....ai eu deletei o arquivo do endereço de origem e ela voltou a retornar True...
O que poderia estar faltando, todas as dicas nesse forum estão assim
Me ajude galera[/u:0f7174f709][/b:0f7174f709][/quote:0f7174f709]
por favor reveja seu código, pode ter algum erro nele, ou então veja o link abaixo:
[url]http://forum.clubedelphi.net/viewtopic.php?t=66880[/url]
Boa Sorte!!!!
Gostei + 0
06/09/2005
G1b4
procedure TForm1.Button1Click(Sender: TObject); var vArquivo: TFileStream; begin vArquivo := TFileStream.Create(´c:\arquivo.txt´,fmCreate); Try Try idHTTP1.Get(´http://www.site.com.br/arquivo.txt´,vArquivo); Except ShowMessage(´Não foi possivel baixar o arquivo !´); End; Finally FreeAndNil(vArquivo); End; end;
Veja se assim funciona...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)