Alle inhalte einer Listbox packen

  • VB.NET

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

    Alle inhalte einer Listbox packen

    Hey, liebe Comm!
    Ich will mit der 7-zip cmd-version alle einträge einer listbox packen.

    VB.NET-Quellcode

    1. Dim i As Integer
    2. For i = 0 To ListBox1.Items.Count - 1
    3. Shell(My.Application.Info.DirectoryPath & "\7za.exe A " & My.Application.Info.DirectoryPath & "\Temp.zip " & ListBox1.Items(i).ToString & " -p" & TextBox2.Text)
    4. next

    Allerdings packt er immer nur einen Eintrag. Ich habe schon verzweifelt nach einer Lösung gesucht ;( ... Ich hoffe ihr könnt mir helfen!
    MFG Quaffel

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

    Du solltest vorher dein Listbox-Einträge in einem einzigen String speichern:

    VB.NET-Quellcode

    1. Dim myString as stringFor i = 0 To ListBox1.Items.Count - 1if myString <> "" then myString &= vbTab 'Damit hast du nen Tab-Zeichen als Eintrags-Splitter
    2. myString &= ListBox1.Item(i).toString
    3. next
    4. Shell(My.Application.Info.DirectoryPath & "\7za.exe A " & My.Application.Info.DirectoryPath & "\Temp.zip " & ListBox1.Items(i).ToString & " -p" & TextBox2.Text)
    Danke, das funktioniert so! :thumbsup:
    Warum ich nie auf solche Sachen komme...

    Hier mal etwas übersichtlicher für die, die auch das Problem haben:

    VB.NET-Quellcode

    1. Dim i As Integer
    2. Dim paths As String
    3. For i = 0 To ListBox1.Items.Count - 1
    4. If paths <> "" Then
    5. paths &= " "
    6. End If
    7. paths = paths & ListBox1.Items(i).ToString
    8. Next
    9. Shell(PFAD_ZU_7ZIP & "\7za.exe A " & ZU_ERSTELLENDE_ZIP-DATEI(Und Pfad dahin) & " " & paths)

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „Quaffel“ ()