[AutoIt Release] Download UDF

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [AutoIt Release] Download UDF

      Da viele bei AutoIt immer rummeckern, dass bei Vista/7 InetGet soviel rumspinnt,
      hab ich mich mal an eine gescheite UDF fürs downloaden gesetzt. In der UDF
      ist eig alles erklärt, daher brauch ich hier im Thread nicht viel dazu sagen.
      Man kann die Downloaddaten (% und Geschwindigkeit) entweder per GUI-Objekt
      oder Progress anzeigen lassen, genaueres in der UDF, außerdem ist ein Beispiel
      dabei.

      Viel Spaß beim anschauen/nutzen.

      Download: Mirror 1, Mirror 2, Mirror 3

      LG Dawn.

      Quelltext only
      Source

      Quellcode

      1. Func _download ($url, $savepath, $handle = False, $label = "", $overwrite = 1)
      2. $bytes = InetGetSize ($url)
      3. $sec1 = @SEC
      4. $sec2 = @SEC
      5. $sec3 = @SEC
      6. $sec4 = @SEC
      7. $dl_proc = 0
      8. $old_calc = 0
      9. $speed = "Wird berechnet"
      10. $stop = False
      11. If FileExists ($savepath) Then
      12. If $overwrite = 1 Then
      13. FileDelete ($savepath)
      14. Else
      15. $stop = True
      16. EndIf
      17. EndIf
      18. If $bytes = 0 Then
      19. Return 2
      20. ElseIf $stop = True Then
      21. Return 3
      22. Else
      23. $main = InetGet ($url, $savepath, 0, 1)
      24. $info = InetGetInfo ($main)
      25. If $handle = False Then
      26. $progress = ProgressOn ("Download", "Download wurde gestartet!")
      27. Else
      28. GUICtrlSetData ($handle, 0)
      29. EndIf
      30. Do
      31. $info = InetGetInfo ($main)
      32. $calc = Round ($info[0] / ($bytes /100))
      33. $sec1 = @SEC
      34. If $sec1 <> $sec2 Then
      35. #cs ### only works on XP ###
      36. $size = FileGetSize ($savepath)
      37. $speed = ($size - $dl_proc) / 1024
      38. $dl_proc = $size
      39. #ce ### only works on XP ###
      40. $speed = ($info[0] - $dl_proc) / 1024
      41. $dl_proc = $info[0]
      42. $sec2 = @SEC
      43. EndIf
      44. If $handle = False Then
      45. If $old_calc <> $calc Then
      46. $old_calc = $calc
      47. ProgressSet ($calc, "Download wurde zu " & $calc & "% abgeschlossen." & @CRLF & "Aktuelle Downloadgeschwindigkeit: " & $speed & "kb/s.")
      48. EndIf
      49. Else
      50. $sec3 = @SEC
      51. If $sec3 <> $sec4 Then
      52. $sec4 = @SEC
      53. GUICtrlSetData ($label, "Download wurde zu " & $calc & "% abgeschlossen." & @CRLF & "Aktuelle Downloadgeschwindigkeit: " & $speed & "kb/s.")
      54. EndIf
      55. GUICtrlSetData ($handle, $calc)
      56. EndIf
      57. Until $info[2] = True
      58. If $handle = False Then
      59. ProgressOff ()
      60. Else
      61. GUICtrlSetData ($label, "Download wurde erfolgreich abgeschlossen!")
      62. EndIf
      63. Return 1
      64. EndIf
      65. EndFunc
      Alles anzeigen


      OT: Unbanned yay, Taser du bistn NOOB.
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • OT: Unbanned yay, Taser du bistn NOOB.
      <3 Thanks- wert. ;'3

      Zum Tool:

      Wieder mal ein sinnloses Tool aus Hause Dawn ....


      Dein Screenmaker ist das bisher beste Tool den Rest kannst du in die Tonne werfen! ...

      Egal welche Inspirationen oder Gedanken du während des Schreibens von dem Screenmaker hattest, schnappe sie wieder auf und setzt dich ans Schreibe!
    • Cheas3r;220102 schrieb:

      <3 Thanks- wert. ;'3

      Zum Tool:

      Wieder mal ein sinnloses Tool aus Hause Dawn ....


      Dein Screenmaker ist das bisher beste Tool den Rest kannst du in die Tonne werfen! ...

      Egal welche Inspirationen oder Gedanken du während des Schreibens von dem Screenmaker hattest, schnappe sie wieder auf und setzt dich ans Schreibe!

      1. lass mich :<
      2. meine tools entstehen meist zum eigengebrauch, teile sie aber dann gerne mit anderen
      3. ich habe keine inspiration, das geschieht alles durch den computeralltag xD