listbox upload

  • VB.NET

Es gibt 25 Antworten in diesem Thema. Der letzte Beitrag () ist von duti.

    listbox upload

    Hi Leute,

    Ich weis bestimmt gibt es viele threads über listbox upload.. doch ich hab mehr oder weniger schon alles.. mein problem ist einfach wenn ich auf upload drücke kommt bei mir die meldung "Das Argument kann nicht Nothing sein. Parametername: sourceFileName.

    Mein Code

    Quellcode

    1. Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles suchen.Click
    2. Try
    3. With OpenFileDialog1
    4. .FileName = ""
    5. .Title = "JPG"
    6. .Filter = "JPG |*.JPG |Alle Datein|*.*"
    7. Dim dlgR = .ShowDialog
    8. If dlgR = Windows.Forms.DialogResult.Cancel Then
    9. Exit Sub
    10. End If
    11. For Each datei As String In OpenFileDialog1.FileNames
    12. ListBox1.Items.Add(datei)
    13. Next
    14. End With
    15. Catch ex As Exception
    16. MsgBox(ex.InnerException)
    17. End Try
    18. End Sub


    könnt Ihr mir helfen?

    währe sehr dankbar darüber..

    MfG Duti
    Upload währe das hier:

    Quellcode

    1. Private Sub upload_Click(sender As System.Object, e As System.EventArgs) Handles upload.Click
    2. Try
    3. My.Computer.Network.UploadFile(ListBox1.Text, "ftp://" & ip.Text & "/public_html/" + Label1.Text, user.Text, pw.Text, True, 500)
    4. Catch ex As Exception
    5. MsgBox(ex.Message)
    6. End Try
    7. End Sub


    wenn ich jetzt eine datei hochladen will sagt der "Das Argument kann nicht Nothing sein" Parametername: Sourcefilename
    Die Upload-Methode kann nur einzelne Datei hochladen. Wenn Du mehrere Dateien hochladen willst, musst du sie nacheinander übertragen.
    Beispiel:

    VB.NET-Quellcode

    1. For Each selectedItem In ListBox1.SelectedItems ' Vorausgesetzt, ListBox enthält absolute Pfade
    2. My.Computer.Network.UploadFile(selectedItem.ToString, "proctokoll://remote-server/pfad/filename.extension", "username", "password")
    3. Next

    xtts02 schrieb:

    Natürlich ist es möglich. Du musst nur die Dateien nach deinen Kriterien aussuchen hoch diese nacheinander hochladen.

    ich hab die Listbox so gemacht das ich über Datei-hinzufügen mehrere markieren kann und dann auf die Listbox hinzufügen kann..
    jetzt müsste ich ja alle einzeln markieren und dann auf upload. Gibt es ein weg wie ich alle aufeinmal markieren kann die in der Listbox stehen? oder ohne SelectedItems? das alle die in der Liste stehn geuploadet werden?..

    MfG Ich danke dir viel mals!!
    Nein, Du musst nicht die SelectedItems nehmen. Das war nur ein Beispiel.
    Alle Einträge -> Items

    VB.NET-Quellcode

    1. For Each item In ListBox1.Items
    2. If item.ToString.Contains("not_upload") Then Continue For ' Überspringen, falls der Eintrag (Pfad) die Zeichenkette 'not_upload' enthält.
    3. My.Computer.Network.UploadFile(item.ToString, "address", "username", "password")
    4. Next
    Ich bekomm nun den Fehler das ich einen Dateinamen angeben muss, liegt das daran das ich eine Listbox genommen habe?

    ich versteh nicht wo ich den namen aller dateien die ich uploaden will eingebe? das müsste ja eigentlich gleich das erste in der Klammer
    sein nach

    Quellcode

    1. My.Computer.Network.UploadFile
    oder lieg ich da voll falsch?
    oder muss ich noch die listbox als dateiname deklarieren?
    Systax von der UploadFile-Methode:

    VB.NET-Quellcode

    1. My.Computer.Network.UploadFile("quellPfad", "zielAdresse", "benutzername", "kennwort")

    Dabei ist
    - quellPfad der absolute Pfad (also vollständig mit Laufwerkbuchstabe, Verzeichnis(ne), Dateiname) zu der Datei auf lokalen Festplatte
    - zielAdresse die Pfad zu der Datei auf dem Server

    Diese Methode kann immer nur eine Datei gleichzeitig hochladen.
    Wenn Du mehrere Dateien (die in einer ListBox aufgelistet sind) hochladen willst, musst Du z.B. mit For Each alle Einträge (ein Eintrag oder Item entspricht der Pfad einer hochzuladenen Datei) aus der Items-Eigenschaft (vom Typ ItemsCollection) durchlaufen und jeden von ihnen mit der UploadFile-Methode hochladen.
    Beispiel: siehe meines letzten Beitrags

    xtts02 schrieb:

    Was nützt die Schönheit, wenn der Thread-Ersteller schon damit ein wenig überfordert ist?

    Sollte man nicht besser direkt am Anfang das Vorschlagen, was am meisten Stil hat?

    Und sowas ist nun wirklich kein Akt , ob er jetzt eine Zeile mehr schreibt oder nicht, das wäre es mir persönlich für Code, welcher mehr Stil hat schon Wert.

    Wenn man einem Baby von Anfang an "Dreck" einflößt dann gewöhnt es sich daran und möchte evtl. sogar nichts anderes.

    Das sind dann letztendlich die Typen, worüber sich Leute wie Du aufregen, weil Sie mit unsauberem Code ankommen,
    obwohl sie sich schon seit mehreren Jahren mit Vb beschäftigt haben(und woher haben sie den unsauberen Code)?
    "Ja, hab ich mal gesehen als ich die Grundlagen lernen wollte..."
    Leute nicht streiten ;)

    Ich hab die Listbox so eingestellt und gecodet das ich den pfad auch drin hab..
    und als quelle ist die listbox1.item da in der listbox ja die pfade drin sind müsste das ja klappen?

    schauts euch mal bitte an

    Quellcode

    1. Private Sub suchen_Click(sender As System.Object, e As System.EventArgs) Handles suchen.Click
    2. Try
    3. With OpenFileDialog1
    4. Dim dlgR = .ShowDialog
    5. If dlgR = Windows.Forms.DialogResult.Cancel Then
    6. Exit Sub
    7. End If
    8. For Each datei As String In OpenFileDialog1.FileNames
    9. ListBox1.Items.Add(datei)
    10. Next
    11. End With
    12. Catch ex As Exception
    13. MsgBox(ex.InnerException)
    14. End Try
    15. End Sub
    16. Private Sub upload_Click(sender As System.Object, e As System.EventArgs) Handles upload.Click
    17. Try
    18. For Each item In ListBox1.Items
    19. If item.ToString.Contains("not_upload") Then Continue For ' Überspringen, falls der Eintrag (Pfad) die Zeichenkette 'not_upload' enthält.
    20. My.Computer.Network.UploadFile(item.ToString, "ftp://" & ip.Text & "/public_html/" + Label1.Text, user.Text, pw.Text)
    21. Next
    22. Catch ex As Exception
    23. MsgBox(ex.Message)
    24. End Try
    25. End Sub


    Danke euch viel viel malllsss!!!!!