Archiv verlassen und diese Seite im Standarddesign anzeigen : Download einer quelle aus dem Inet
Hi,
Ich möchte in meinem Programm etwas runterladen. In meinem Fall würde diese Datei server.met heißen und auf einem webserver liegen ( Ihr kennt die ja )
Mein Programm soll diese auf Knopfruck runterladen und in das selbe Verzeichniss speichern in dem auch mein Progam liegt.
Der name des servers (www.derserver/server.met) z.b. erhalte ich nicht durch eine Textbox sonderns als item in einer Listbox, in der sich noch mehrere andere server befinden und die auch ständig akualisiert wird.
Kurz: In der listbox ist die adresse und ich will diese durch knopfdruck runterladen.
Ich würde mich über jede Hilfe freuen
Danke Jörg
nimm mal das Internet Control, damit geht das ganz einfach, da gibts ne Funktion namens GetURL. (schau sonst mal in der Hilfe) der Rest ist dann ja relativ simpel
so long
cYrus
Danke erst mal
Das hier hat geklapt:
Dim BinFile() As Byte
Dim i As Long
Dim FF As Integer
Dim Datei As String
Dim strUrl As String
----------------------------------------------------------------------------------
Private Sub Command3_Click()
strUrl = "http://mitglied.lycos.de/eselmann2/Met/server.met"
Inet1.RequestTimeout = 100000
BinFile() = Inet1.OpenURL(strUrl, icByteArray)
Datei = "server.met"
FF = FreeFile
Open Datei For Binary As FF
For i = 0 To UBound(BinFile)
Put #FF, , BinFile(i)
Next i
Close #FF
leider wolte ich ja keine permanent URl runterladen sondern als item aus ner Listbox aber mit""" strUrl = "list1.selected" """
gehts net!
Help :)))
Danke
ups.. war ja OpenURL und ned GetURL ;)
wegen der ListBox: mit selected bekommst du nur die ID der Auswahl du kannst sonst mit ListBox1.Text den Text auslesen und mit ListIndex die Auswahl definieren..
so long
cYrus
geht das nicht irgendwie einfacher, wenn ich einfach nur ein Bild von einer externen quelle ( Inet ) laden will, bzw es runter laden und dann von VB auf der platte suchen lasse ?
butterkeks
10.01.2005, 22:22
Ich würde sagen, das inet control ist die trivialste Möglichkeit, die VB mit sich bringt
sei es noch so simpel, ich weiß nicht wie es geht
ich habe es mir openURL versucht, weil ich das wo gelesen hatte, er kennt aber den befehlt URL nicht
hatte es mir oIE.GetObject versucht, er konnte mit dem pfad nix anfangen und hatte nichts in dem er das bild anzeigen konnte...
Ich weiß nicht wie es geht.
Ich muss nur ein Bild aus dem internet in mein form laden
doch geht mit dem ftp befehl "get"
Do
DoEvents
Loop Until Not Inet1.StillExecuting
Inet1.Execute , "get 1mbtest.txt c:\1mbtest.txt" `=>hier dann deine datei
txtausgabe.Text = txtausgabe.Text & Time & " FTP download Datei wird heruntergeladen :" & Inet1.ResponseInfo & vbCrLf
thx
"get 1mbtest.txt c:\1mbtest.txt"
ist wo er es hinspeichert und ?
`=>hier dann deine datei
[/CODE]die URL von der die Datei geladen wird ?
Denial of Service
11.01.2005, 08:27
hmm... also ich würd´s so machen
echo open IP DES SERVERS MIT PORT>>c:\dudel.bat
(wenn´s n FTP ist noch)
echo anonymous>>c:\dudel.bat <-- sofern anonymer acc ansosnsten deine daten
echo anonymous@lol.com>>c:\dudel.bat <-- das gleiche wie oben
echo get DEINE DATEN>>c:\dudel.bat
echo quit>>c:\dudel.bat
und jetzt nur die dudel.bat starten
thx
ist wo er es hinspeichert und ?
die URL von der die Datei geladen wird ?
genau dann so : "get server.met c:\server.met "
"get server.met(<= deine datei auf dem server) c:\server.met " (<=und mit dem Befehl wird es local auf deinem pc gespeichert auf festplatte c,kannst auch umbenennen beim runterladen .z.b. dann in c:\server.meeet damit die vorhandene nicht überschrieben wird )
klar Denial of Service mit einer bat geht auch ,aber mit vb hat mann doch ein paar möglichkeiten mehr .
butterkeks
11.01.2005, 15:40
@uzge das geht aber nur über ftp, oder?
@thing
einfacher geht's so:
msgbox Inet1.OpenURL("http://blah.de/blah.txt", icString)
das war's eigentlich; Die msgbox zeigt den inhalt von http://blah.de/blah.txt.
Nun geht der Code von jhsmoky einen SChritt weiter und er speichert das ganze obendrein noch ab (OpenUrl() lädt das ganze nur in den Speicher, so weit), aber die grundlegende Vorgehensweise ist die selbe.
Man muss warsch. net unbedingt ein Byte Array nehmen, sondern kommt auch mit nem String zurecht, aber beim String wandelt VB das ganze noch in Unicode um, was Zeit kostet (VB arbeitet intern mit unicode).
Eine Zeile Code um eine Datei runter zu laden finde ich, wie gesagt, trivial
@ Denial: Darauf komme ich später zurück
@uzge: wie genau schreib ich das ?
Inet1.Execute , "get test.jpg c:\test.jpg" "http://www.space.de/test.jpg"
geht nicht
@ Denial: Darauf komme ich später zurück
@uzge: wie genau schreib ich das ?
Inet1.Execute , "get test.jpg c:\test.jpg" "http://www.space.de/test.jpg"
geht nicht
glaube butterkeks hat recht geht glaube nur bei ftp servern ,
habe es an einem ftp server getestet der code unten geht bei ftp server.
Do
DoEvents
Loop Until Not Inet1.StillExecuting
Inet1.Execute , "get test.jpg c:\test.jpg"
hö ?
hatte ganz übersehn, das butterkeks gepostet hat O_o
naja, bin wohl leicht im wahn.
Danke, ich teste es mal
msgbox Inet1.OpenURL("http://blah.de/blah.txt", icString)
Eine Zeile ist tatsächlich recht simpel.
Aber das gnaze funktioniert nicht.
Er gibt einen debugg error aus "Object Required" und markiert die ganze Zeile
butterkeks
12.01.2005, 18:40
du hast warsch. kein inet control erstellt, oder keins mit dem Namen inet1
was ist ein internet control, und wie mach ich das ? :/ :/ :/
butterkeks
12.01.2005, 20:55
du gehst auf Projekt->Komponenten und wählst aus der liste das "Microsoft Internet Transfer Control", wenn ich mich recht entsinne zumindest.
Du bekommst in deiner Control Palette eine neues Icon, das ist das Inet Control.
Einfach auf die Form ziehen und den Code von oben mal einfügen, sollte gehen (natürlich vorher noch den URL abändern)
Kann jedoch sein, dass das Control nicht bei allen Editionen dabei ist, ka
hat funktioniert, dank dir.
Ich hab da noch ein Tip für euch :
Schaut mal unter
http://www.vbwelt.de/vb_welt/tools/show.asp?f=Allgemein%5CInternet+Files%2Exml
Dort könnt ihr ein Control runterladen.
Somit ist es möglich Dateien runterzuladen und zu speichern
Beispiel :
inetfile1.url ="http://www.Adresse.de/datei.jpg"
inetfile1.load "c:\Zielverzeichnis\Datei"
unter
http://www.vbwelt.de/vb_welt/tools/show.asp?f=Allgemein%5CInternet+Images.xml
gibt es ein Control wie das obengenante, aber speziell für Bilder.
Schaut es euch mal an.
Blinky
Da bauen die Sprachen schon allen Mist ein, damit man alles Mögliche machen kann, ohne , wie in dem Fall, sich mit Hintergründen wie http Protokoll zu beschäftigen. Und trotzdem schaffen Personen wieder nicht, den vorgefertigten Krimskrams zu benutzen. Liegt das an mieser Doku oder sowas?
Bye, TGGC
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.