So, jetzt habe ich es "geschafft"
Kurzum, ich habe den download vom Windows Server nach ftp umgestellt und damit gibt es keine Probleme!
So, jetzt habe ich es "geschafft"
Kurzum, ich habe den download vom Windows Server nach ftp umgestellt und damit gibt es keine Probleme!
Neue Erkenntnisse :
Der Server macht auch die maximale Bandbreite mit, wenn ich nach inetget() das Programm länger schlafen lasse.
Bis 5.8 gb
Hmm...
Also neue Feststellung,
Wenn ich das Scrip mit der sleep() in den Schlaf schicke bleibt der Download hoch...
Kann es sein, dass der Windows Server nur alle 10 Sekunden oder so eine neue Abfrage zulässt vom Download?
Hab zurzeit
Inetget ()
Do
Sleep(1000)
Until download complete
Inetclose()
Oder ist da irgendwo der Fehler drin?
FTP "Wäre!" eine Option... Weil ja die Datei benutzer spezifisch sind und für jemand anderen nutzlos wäre.
Aber was mich halt stört, ist es ja, dass die inetget zwar funktioniert. Aber nur in den ersten paar Sekunden auf dem windows System und es denn extrem gedrosselt wird. Wobei die datei mit Chrom oder sonst einem Browser zu 100% mit der vollen Bandbreite runtergeladen werden kann.
Als würde halt windows bei der inetget() die Verbindung halt abbrechen. Oder die Funktion selber...
Mit(URL,Location, 16,1) kommt auch die drossel.
Also ich hab es beobachtet und es scheint so, dass der Server ab ca.700mb die Verbindung halt schließt und dann autoit die Verbindung neu aufbaut im Sekunden takt ca.
Jap, der Server ist halt gemietet von einem Provider.
Ecc hat er alles.
Steht in der MTU sowas wie alle Browser erlauben aber nicht über ein Programm?
Und MUSS auf dem Server denn FTP für autoit aktiviert sein? Weil autoit von selbst den Port 21 benutzt?
Demzufolge vermute ich das autoit eine Information nicht mit übermittelt, da der Download mit Chrome ja Erfolg hat.
Wandelt autoit den link in eine ftp Anfrage um?
Danke, ich werde es versuchen.
Wie gesagt das inetget() lädt mit der selben Konfiguration eine 100gb große Datei mit 900mbit's runter.(von einem Ubuntu server
Auch wenn es nur die Funktion ist.
Sollte ja bekannt sein.
Und der Fehler ist einfach, dass der Windows Server die vom inetget geforderten Download drosselt.
Und ich möchte hier halt wissen, woran es liegt? Ob ich beim inetget irgendwas ändern kann oder an dem windows server was geändert werden muss.
Und vielleicht ist der Fehler bekannt und ich bekomme Tipps.
Mit freundlichen Grüßen
Guten Abend /Morgen,
Folgendes Problem :
Ich habe eine .exe erstellt, die mir von meinem Server eine größere Datei runterlädt.
Nur das geht nicht. Der Server schaltet nach ein paar GBs mit high-speed auf ca 35 mbit's.
Ja, es ist Serverseitig, da ich es mit ein paar Rechnern geprüft habe.
Und das Phänomen ist ja auch, dass der Download mit Chrome oder dem ie tadellos funktioniert. Sodass ich xampp auch ausschließen kann.
Ja, zum Server noch :
Windows 2019, 8 cores, 64gb RAM, 10tb Platte
1 gbit Leitung (und darum auch die 35 mbit ein Witz)
Mit freundlichen Grüßen
Danke,
Es funktioniert.... ENDLICH
Ganz Ganz Gaaaaaaaaaanz lieben Dank
Zum Verständnis noch mal. Es handelt sich NICHT um irgendeine Illegale Tätigkeit. Ich möchte nur eine von mir geschaffene Datei von meinem Server runterladen.
Und alle Daten habe ich auch.
Bin auch der Meinung, dass es mittels ftp oder sftp oder ftps geht. Nur fehlt mir dazu noch die Kenntniss da eine Fortschrittsanzeige zu haben um das Script solange zu pausieren, bis der Download fertig ist.
Mit freundlichen Grüßen
Moin,
und zwar habe ich schon dutzende arten versucht, das irgendwie hinzubekommen.... aber ich schaffe es einach nicht.
Es soll einfach nur die URL aufrufen, den Text abspeichern und mit dem denn das InetGet ausführen.
die .php gibt nur 2 strings aus und nicht mehr.
Biite um Hilfe
Mit freundlichen Grüßen
#include <InetConstants.au3>
#include <MsgBoxConstants.au3>
#include <WinAPIFiles.au3>
#include <AutoItConstants.au3>
#include <Inet.au3>
Global $FertigSumme = 0
Global $hDownload = 0
Global $DownRead = 0
Global $Downsize = 0
Func Example()
Global $string
$string = StringSplit( _INetGetSource('http://www.zockery.de/huch.php'), ";")
Global $DownLoadSelect = $string[2]
Global $DownLoadLocation = $string[1]
$hDownload = InetGet($DownLoadLocation,$DownLoadSelect, 1, 1)
Sleep(5000)
ProgressOn("Download" & @CRLF & "..." , "0%", -1, -1, BitOR($DLG_NOTONTOP, $DLG_MOVEABLE))
Do
$DownRead = InetGetInfo ( $hDownload, 0 )
$DownSize = InetGetInfo ( $hDownload, 1 )
$FertigSumme = ($DownRead*100)/$DownSize
ProgressSet(round($FertigSumme,1), round($FertigSumme,1) & "%")
If InetGetInfo ( $hDownload, $INET_DOWNLOADSIZE ) == InetGetInfo ( $hDownload, $INET_DOWNLOADREAD ) Then
ProgressSet(100, "Download", "Complete")
Sleep(5000)
ProgressOff()
EndIf
Until InetGetInfo($hDownload, $INET_DOWNLOADCOMPLETE)
InetClose($hDownload)
EndFunc
Example()
Alles anzeigen