Automamatischer Download von Dropbox und co.

  • VB.NET
  • .NET (FX) 4.0

Es gibt 16 Antworten in diesem Thema. Der letzte Beitrag () ist von TVX.

    Automamatischer Download von Dropbox und co.

    Hallo
    Ich habe ein Programm das bestimmte Dateien benötigt.
    Diese Dateien soll das Programm bei Ersten Ausführen Herunterladen.

    Hier Mein Code Ansatz

    Quellcode

    1. If My.Settings.FirstRun=True Then
    2. `Hier Sollte Der Download Code sein.
    3. My.Settings.FirstRun = False
    4. My.Settings.Save
    5. End If


    Danke für Eure Hilfe

    Gruss PPR

    PPR-Dev schrieb:

    Und wie geht das???
    Danke
    PPR


    So quer ausm kopf raus...ggf ändern wenn OptionStrict On

    VB.NET-Quellcode

    1. Dim p As Path = System.Environment.SpecialFolder.ApplicationData + "\MeinProgramm\"
    2. If Directory.Exists(p) Then
    3. MessageBox.Show("Pfad gefunden")
    4. Else
    5. Directory.CreateDirectory(p)
    6. End If

    Funktioniert das auch??

    Hallo
    Funktioniert dieser Code so auch?? (RICHTIG Funktionieren!!)

    Quellcode

    1. Dim p As Path = System.Environment.SpecialFolder.ApplicationData + "\MeinProgramm"
    2. If Not Directory.Exists(p) Then
    3. Directory.CreateDirectory(p)
    4. Else
    5. Label1.Text= "Fehler Beim Ordner Erstellen!"
    6. End If

    Und Ist SpecialFolder.ApplicationData = C:\Programme\Mein Programm ?????
    Danke

    PPR

    Ein Paar ??

    @GooMan müste denn der Code so aussehen, wenn ich ein Ordner in C anlege :

    Quellcode

    1. ​Dim p As Path = System.Environment.SpecialFolder.Application.StartupPath + "\MeinProgramm"
    2. If Not Directory.Exists(p) Then
    3. Directory.CreateDirectory(p)
    4. Else
    5. Label1.Text= "Fehler Beim Ordner Erstellen!"
    6. End If


    @Trade Nein, Ein Programm soll Erweiterungen oder Dokumente... Herunterladen und wenn Möglich in einem Ordner C:\+Mein Programm Speichern, das das Programm die Datenbanken, Erweiterungen Findet...

    Danke PPR
    C:\ wäre

    Visual Basic-Quellcode

    1. Dim p As Path = "C:\MeinProgramm"


    Visual Basic-Quellcode

    1. Dim p As Path = System.Environment.SpecialFolder.Application.StartupPath + "\MeinProgramm"


    Gibts nicht. Das was du meinst wäre NUR

    Application.StartupPath

    Das ist aber der STARTPFAD. Also da wo die EXE liegt.
    Bitte eigne Dir unbedingt mal die Grundlagen an. Path ist eine Klasse und kein Datentyp. Was Du suchst ist String.
    Außerdem brauchst Du Environment.GetFolderPath, denn ohne das liefert das nur den Eintrag einer Enumeration zurück, keinen String.
    und Path.Combine nutzen!
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Also es gibt davon ne alte Api.
    Aber für deinen Zweck reicht en normaler Download !

    EDIT:
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Option Strict On
    2. Imports System.Net
    3. Public Class Form1
    4. Dim Nummer As Integer = 0
    5. Dim DownloadListe As New List(Of String)
    6. Dim WithEvents MyWebClient As New WebClient
    7. Dim Ordnerpfad As String = IO.Path.Combine(Application.StartupPath, "DEIN ORDNER") 'Hier Pfad anpassen
    8. Private Sub Form1_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown
    9. If Not IO.Directory.Exists(Ordnerpfad) Then
    10. System.IO.Directory.CreateDirectory(Ordnerpfad)
    11. DownloadListe.Add("https://dl.dropboxusercontent.com/u/80987699/1.txt")
    12. DownloadListe.Add("https://dl.dropboxusercontent.com/u/80987699/2.txt")
    13. DownloadListe.Add("https://dl.dropboxusercontent.com/u/80987699/3.txt") 'Wens mehr simd hier (( DownloadListe.Add )) dabei
    14. Me.Text = "Update wird gestartet..."
    15. Dim Url = New Uri(DownloadListe(Nummer).ToString)
    16. Dim Dateiname As String() = Url.Segments
    17. MyWebClient.DownloadFileAsync(New Uri(DownloadListe(Nummer).ToString), IO.Path.Combine(Ordnerpfad, Dateiname(3)), False)
    18. End If
    19. End Sub
    20. Private Sub myWebClient_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles myWebClient.DownloadProgressChanged
    21. Me.Text = e.ProgressPercentage & " %"
    22. ProgressBar1.Value = e.ProgressPercentage
    23. End Sub
    24. Private Sub DownloadFileCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs) Handles MyWebClient.DownloadFileCompleted
    25. Nummer += 1
    26. Select Case Nummer
    27. Case 1
    28. Dim Url = New Uri(DownloadListe(Nummer).ToString)
    29. Dim Dateiname As String() = Url.Segments
    30. MyWebClient.DownloadFileAsync(New Uri(DownloadListe(Nummer).ToString), IO.Path.Combine(Ordnerpfad, Dateiname(3)), True)
    31. Case 2
    32. Dim Url = New Uri(DownloadListe(Nummer).ToString)
    33. Dim Dateiname As String() = Url.Segments
    34. MyWebClient.DownloadFileAsync(New Uri(DownloadListe(Nummer).ToString), IO.Path.Combine(Ordnerpfad, Dateiname(3)), True)
    35. Case 3 ' Und entsprechend oben - wens mehr werden soll (( Case 4 usw... ))
    36. Nummer = 0
    37. MyWebClient.Dispose()
    38. DownloadListe.Clear()
    39. Me.Text = "Update ist beendet !"
    40. ProgressBar1.Value = 0
    41. End Select
    42. End Sub
    43. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    44. Process.Start(Ordnerpfad) 'Ordnerpfad öffnen - einach weils che is (-: und ma reinkucken
    45. End Sub
    46. End Class
    47. 'Url's bleiben als Test bis am 25.3.2014 um 18:00 activ (-:
    48. 'Zum erneuten testen muss ordner gelöscht werden !!!


    Wichtig :
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Dim Url = New Uri("https://dl.dropboxusercontent.com/u/80987699/1.txt")
    2. Dim Dateiname As String() = Url.Segments
    3. MsgBox(Dateiname(3)) '0 bis x im Code anpassen ,bis die Endung stimmt !
    4. 'Das Ergebnis sollte zb (( 1.txt )) sein - immer der Dateiname der in der Url ist !



    Test Mappe in vb 2013:
    www46.zippyshare.com/v/99643407/file.html


    PS : Der Pfad (( C:\MeinProgramm )) brauch Admin Rechte !

    Dieser Beitrag wurde bereits 17 mal editiert, zuletzt von „TVX“ ()