UplodFileAsync ohne Fehler... geht nicht

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Fire88.

    UplodFileAsync ohne Fehler... geht nicht

    Halle VBler,

    nun hab ich mich entschlossen da ich immer wider sehe und höre das die "UploadFileAsync" Methode am besten ist sie selber zu testen.
    da ich ja schon an einem Projekt dran bin bei der ich diese Methode gut brauchen könnte, hab ich es mal versucht.. leider bekomme ich keinen Fehler, ja Leider.. den es geht nicht.. nun weiß ich nicht was das nicht stimmt das kein Fehler kommt, und das es nicht klappt...=)

    hier meine Methode:

    VB.NET-Quellcode

    1. Dim login As String() = IO.File.ReadAllLines("upload.dll")
    2. Dim wc2 As New WebClient
    3. Try
    4. wc2.UploadFileAsync(New Uri("ftp://" & login(0) & "@1*9.***.249.1*2/aaaa/"), "index.php", login(0), login(1))
    5. Catch ex As Exception
    6. MessageBox.Show(ex.Message)
    7. End Try


    in der upload.dll steht mit dem Editor geschrieben: username
    Passwort

    wen ich es starte kommt kein Fehler zurück, leider ändert sich auch nichts an der Datei.

    so geht es auch nicht:

    VB.NET-Quellcode

    1. Dim login As String() = IO.File.ReadAllLines("upload.dll")
    2. Dim wc2 As New WebClient
    3. Try
    4. wc2.Credentials = New Net.NetworkCredential(login(0), login(1))
    5. wc2.UploadFileAsync(New Uri("ftp://" & login(0) & "@1*9.***.249.1*2/aaaa/"), "index.php", login(0), login(1))
    6. Catch ex As Exception
    7. MessageBox.Show(ex.Message)
    8. End Try

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Fire88“ ()

    vlt. erhälst du keinen Fehler, weil der Fehler erst auftritt, wenn der Aufruf der Methode längst vorbei ist. Wohin soll denn ein Fehler geworfen werden, wenner in einem anneren Thread stattfindet?
    Der MainThread ist zu dem Zeitpunkt ja sicherlich mit was ganz annerem beschaftigt, also in einer x-beliebigen Methode, die den Fehler ganz sicher nicht behandeln kann.

    Aber guck dirmal im ObjectBrowser die EventArgs der Events des WebClients an, da findet sich zB sowas:

    Public ReadOnly Property [Error] As System.Exception
    Member von System.ComponentModel.AsyncCompletedEventArgs
    Zusammenfassung:
    Ruft einen Wert ab, der angibt, welcher Fehler während eines asynchronen Vorgangs aufgetreten ist.

    Rückgabewerte:
    Eine System.Exception-Instanz, wenn während eines asynchronen Vorgangs ein Fehler aufgetreten ist, andernfalls null.

    Image schrieb:

    wc.Credentials = new NetworkCredential(login(0), login(1));
    wc.UploadFileAsync(New Uri("ftp://server.de/index.php), "pfad auf deinen rechner")

    Deine Upload.dll hat aber mal rein garnix mit einer Bibliothek zutun..

    Das soll sie ja auch nicht. ist im Grunde genommen NUR eine Textdatei.. und keine Klassenbibliothek
    und wen man diese mit dem editor öffnet, steht loginID und Passwort drin.
    auf diese weise ght es, das hab ich auch getestet... mein Problem liegt in der UplodFileAsync Methode.

    ErfinderDesRades schrieb:

    vlt. erhälst du keinen Fehler, weil der Fehler erst auftritt, wenn der Aufruf der Methode längst vorbei ist. Wohin soll denn ein Fehler geworfen werden, wenner in einem anneren Thread stattfindet?
    Der MainThread ist zu dem Zeitpunkt ja sicherlich mit was ganz annerem beschaftigt, also in einer x-beliebigen Methode, die den Fehler ganz sicher nicht behandeln kann.

    Aber guck dirmal im ObjectBrowser die EventArgs der Events des WebClients an, da findet sich zB sowas:

    Public ReadOnly Property [Error] As System.Exception
    Member von System.ComponentModel.AsyncCompletedEventArgs
    Zusammenfassung:
    Ruft einen Wert ab, der angibt, welcher Fehler während eines asynchronen Vorgangs aufgetreten ist.

    Rückgabewerte:
    Eine System.Exception-Instanz, wenn während eines asynchronen Vorgangs ein Fehler aufgetreten ist, andernfalls null.


    Fehler: "Ausnahmefehler während einer WebClient-Anforderung."

    uiui großer Beitrag den du da geschrieben hast... =)

    -----------------------------------------------------------------------------
    Edit:
    So geht es nun, kommt keine Fehlermeldung. aber die Datei wird nicht hoch geladen. es erscheint die msgbox getrennt sprich es entsteht kein Fehler in dem try catch block.

    VB.NET-Quellcode

    1. Dim login As String() = IO.File.ReadAllLines("upload.dll")
    2. Dim wc2 As New System.Net.WebClient
    3. Try
    4. wc2.Credentials = New Net.NetworkCredential(login(0), login(1))
    5. wc2.UploadFile((Application.StartupPath & "abc.txt"), ("ftp://" & login(0) & "@**9.***.2**.1**/aaaa/abc.txt"), "abc.txt")
    6. MessageBox.Show("getrennt")
    7. Catch ex As Exception
    8. MessageBox.Show(ex.Message, "Fehler")
    9. End Try

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Fire88“ ()