Problem mit .dll

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Nick33.

    Problem mit .dll

    Hallo!

    Ich lese mit diesem Code

    VB.NET-Quellcode

    1. Public Class Class1
    2. Public Function LoadPictures(ByVal Path As String)
    3. Dim lines() As String = IO.File.ReadAllLines(Path)
    4. ' benötigt: eine listbox(listbox1) zum auflisten der ergebnisse
    5. For Each line In lines
    6. Dim Var As String
    7. Var = lines(0)
    8. Return Var
    9. Next
    10. End Function


    den Text dieser Textdatei

    C:\bla
    D:\Blubb
    Ausliest.

    Allerdings kommt bei meinem Aufruf

    VB.NET-Quellcode

    1. picdll.LoadPictures("C:\Users\Marco\Desktop\test.txt")
    2. MsgBox(picdll.LoadPictures("C:\Users\Marco\Desktop\test.txt").ToString())


    Immer nur eine MsgBox mit "C:\Bla",
    ich hätte aber gerne dass danach noch "D:\Blubb" kommt. Was hab ich falsch gemacht?

    MFG Nick zu später Stunde.
    Alles ;) Naja also du hast alles ein bisschen durcheinander. Probier´s mal so:

    VB.NET-Quellcode

    1. Public Function LoadPictures(ByVal Path As String) As String
    2. Return IO.File.ReadAllText(Path)
    3. End Function

    Fertig... du bekommst genau den Inhalt der Textdatei zurück. Wenn du jetzt trotzdem die einzelnen Zeilen haben willst, kannst du das auch beim Aufruf machen:

    VB.NET-Quellcode

    1. Dim lines() As String = Split(picdll.LoadPictures("C:\Users\Marco\Desktop\test.txt"), vbnewline)


    Du kannst nicht einfach Werte nacheinander zurückgegben. In der Regel returned eine Funktion EINEN Wert. Du könntest z.B. wenn du direkt alle Zeilen als Array haben möchtest, die Funktion als Array deklarieren, und dann das Array returnen.