Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi anmeldung & download von einer Datei (https://www.delphipraxis.net/22701-anmeldung-download-von-einer-datei.html)

Corelgott 21. Mai 2004 20:12


anmeldung & download von einer Datei
 
Hi @ all,

ich versuche mich gerade daran eine Datei per Delphi herunterzuladen. (Und zwar die Datei, in der die aktuelle wan-ip meines routers steht!)
Aber so wie es sich gehört hat ein router ein passwort bzw. einen bentuzer. WEnn ich also an die DAtei herran möchte will er erst mal pw und name haben....

Dache erst, das könnte ich so übergehen:
http://user:pwd@router/ipseite.asp

Aber das mag er nicht und gibt mir immer nur fehler wieder.

Zum downloaden des ganzen hatte ich diese func gefunden:
Code:
UrlDownloadToFile(nil, PChar(Source), PChar(Target), 0, nil);
Das ganze geschieht im lan und nicht übers wan!

thx für's nachdenken

cya
Corelgott

a.vollmer 21. Mai 2004 20:38

Re: anmeldung & download von einer Datei
 
mit der IDHTTP Komponente der IndyGruppe kannst du sowas leicht machen...

Einfach im ObjectInspector oder zur Laufzeit Benutzername und Passwort setzen und so downloaden:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Datei: TFIleStream;
begin
  Datei:=TFileStream.create('C:\datei.exe',fmCreate);
  IdHttp1.Get('http://www.domain.de/datei.exe',Datei);
  Datei.free;
end;

procedure TForm1.IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);
begin
Label1.Caption:=idHttp1.url.Document+' ('+inttostr(AWorkCount div 1024)+' kB von '+inttostr(IdHTTP1.Response.ContentStream.Size div 1024)+' kB)';
Progressbar1.Position:=AWorkCount*100 div IdHTTP1.Response.ContentStream.Size;
application.ProcessMessages;
end;
Quelle: Delphi-Netzwerk

Gruß

Alex

Corelgott 21. Mai 2004 21:07

Re: anmeldung & download von einer Datei
 
jupp erst mal vielen dank...
ein paar probleme kommen daraus, dass ich das ganze als consolen app geplant habe...

thx
corelgott

Corelgott 22. Mai 2004 14:37

Re: anmeldung & download von einer Datei
 
Also irgendwie... Krich ich noch'n Fön!!

Ich habe bisher noch nicht mit ner Indy Komponente gearbeitet... Ich kann mich mit dem Teil nocht nicht mal zu der "Seite" connecten...
Weder in meiner eigentlichen KonsolenApp noch in ner anderen TestApp....
Ich bekomme ständig Socket Error oder Stream errors...

Ich habe im ObjInspector
den Host (die Ip des Routers)
Benuzername & pwd angegeben... Der Port 80 für HTTP klingt ja da schon mal nicht schlecht..

Dann mache ich folgendes:

Code:
procedure TForm1.Button1Click(Sender: TObject);
begin
    ipFile := TFileStream.create('C:\datei.tmp', fmCreate);
    http.Connect;
    http.Get(Source, ipFile);
    ipFile.Free;
end;
Source ist ne Konstante! (Der komplette Pfad zur Datei als String)

??? *Nerv* Kann ja echt nicht so schwer sein oder?

thx & cya
Corelgott

a.vollmer 22. Mai 2004 15:23

Re: anmeldung & download von einer Datei
 
Hast du ipFile generiert?

Alex

Corelgott 22. Mai 2004 15:28

Re: anmeldung & download von einer Datei
 
Jupp das habe ich,
auf der der Platte taucht die Datei auch auf, ist aber (watt'n wunder) leer.

Selbst bei diesem aufruf bekomme ich probleme...

Code:
memo1.lines.add(http.get(source));
(Selbsteverständlich habe ich ein Memo-Feld auf der Form :-D )

Der Fehler heist, umd das Kind mal beim namen zu nenen:
Invalid argument to Date encode

Wenn ich dagegen mal den Source-Code von google.com herunterlande will macht er das ohne probleme!

ich habe irgenwie die anmeldung, die ich bei meinem router machen muss, in verdacht....

cya
Corelgott

Corelgott 22. Mai 2004 16:37

Re: anmeldung & download von einer Datei
 
ok...
ich tappe immernoch vollkommen im dunkeln...
Dieser doofe download... Ich bekommen den Quellcode von fast jeder Seite... (google.de; delphipraxis.net; web.de)
aber nicht die von meinem router.... seltsam...

Aber ok...

Hat wer ne andere Idee, wie ich die wan-ip meines routers herausbekommen kann?
(Ohne dass ich eine HTML-Datei downloaden muss)

cya
Corelgott


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz