Ordner erstellen wenn der Pfad durch den Benutzer ermittelt wird

  • VB.NET

Es gibt 93 Antworten in diesem Thema. Der letzte Beitrag () ist von kleiner57990.

    Ordner erstellen wenn der Pfad durch den Benutzer ermittelt wird

    Hai an alle

    Also gleich zu sache ich hab folgendes problem

    Und zwar hab ich in einer Form eine combobox die überprüft was für Laufwerk aud dem rechner sind,dann kann der User sich eins ausuchen.

    über ein Button soll dann der Ordner auf dem Laufwerk erstellet werden wie functioniert das bitte?

    VB.NET-Quellcode

    1. Dim lname As String
    2. Dim test As Boolean
    3. Private Sub cmdgo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdgo.Click
    4. cmboxtogo.SelectedItem = sdmenu.cmboxlaufwerke.SelectedItem
    5. lname = cmboxtogo.SelectedItem & "Test"
    6. ' If lname.EndsWith("\") And lname.Length > 3 Then
    7. 'lname = lname.Substring(0, lname.Length - 1)
    8. 'End If
    9. MsgBox(lname)
    10. If Not IO.Directory.Exists(lname) Then
    11. IO.Directory.CreateDirectory(lname)
    12. End If
    13. End Sub
    14. End Class

    So hab ich es versucht doch es functioniert nicht,hab mich schon fast tot gegoogelt und auch hier im forum nichts gefunden kann mir da bitte jemand weiter helfen?

    Ach ja die cmboxgoto.Selectitmer gibt immer einen (lauferkname:\)aus

    Hier noch die fehler meldung die raus kommt

    Der Pfad hat ein ungültiges Format.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „kleiner57990“ ()

    hmm,

    also ich habe mal ne ComboBox, in der 2 Einträge als beispiel C:\ und K:\

    und so funktionierts:

    VB.NET-Quellcode

    1. Dim lname As String = ComboBox1.SelectedItem & "Test"
    2. MsgBox(lname)
    3. If Not IO.Directory.Exists(lname) Then
    4. IO.Directory.CreateDirectory(lname)
    5. End If


    ...für was brauchst du das : cmboxtogo.SelectedItem = sdmenu.cmboxlaufwerke.SelectedItem
    Na ich hab zwei forms einemal das Sdmenu und einmal das indem ich ich dan die cmboxtogo den ausgewählten wert von sdmenu zuweisen.

    Da ich ec versucht habe über einen string also

    VB.NET-Quellcode

    1. Dim X As String
    2. X = sdmenu.cmblaufwerke.SelectedItem
    3. Msg(X)


    dann steht in der message box(zb: C:\)

    doch wenn ich ein ordner erstellen will klappt es immer noch nicht

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

    hab gerade nur den Qcode parat der beide dateien,da ich nicht daheim bin

    mom

    VB.NET-Quellcode

    1. Imports System.IO
    2. Imports System.Net
    3. Public Class sdmenu
    4. Dim laufwerktest, lname As String
    5. Dim laufwerkname, emu, ok As Boolean
    6. Dim Zähler As Integer
    7. Private Sub cmde_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmde.Click
    8. Zähler = 0
    9. Dim Bustaben = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    10. While Zähler < 26
    11. Dim Bustabe = Bustaben.Substring(Zähler, 1)
    12. 'Hinzufgen
    13. If IO.Directory.Exists(Bustabe & ":\") Then
    14. cmboxlaufwerke.Items.Add(Bustabe & " :\")
    15. End If
    16. Zähler += 1
    17. End While
    18. If Zähler = 26 Then
    19. cmboxlaufwerke.Visible = True
    20. cmdok.Visible = True
    21. End If
    22. End Sub
    23. Private Sub cmdr_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdr.Click
    24. End Sub
    25. Private Sub cmdok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdok.Click
    26. lname = cmboxlaufwerke.SelectedItem
    27. cmdok.Visible = False
    28. cmboxlaufwerke.Visible = False
    29. emuaufspielen.Show()
    30. emuaufspielen.cmboxtogo.Items.Add(lname)
    31. End Sub
    32. End Class


    VB.NET-Quellcode

    1. Public Class emuaufspielen
    2. Dim lname As String
    3. Dim test As Boolean
    4. Private Sub cmdgo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdgo.Click
    5. cmboxtogo.SelectedItem = sdmenu.cmboxlaufwerke.SelectedItem
    6. lname = cmboxtogo.SelectedItem & "Test"
    7. ' If lname.EndsWith("\") And lname.Length > 3 Then
    8. 'lname = lname.Substring(0, lname.Length - 1)
    9. 'End If
    10. MsgBox(lname)
    11. If Not IO.Directory.Exists(lname) Then
    12. IO.Directory.CreateDirectory(lname)
    13. End If
    14. End Sub
    15. End Class
    Also bei mir klappt es immer noch nicht frage mich nur wieso, hab es bei dir auch mit der einen schon fertzigen datei probiert da klappt es nicht

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

    der fehler kommt bei IO.Directory.CreateDirectory (lname)

    VB.NET-Quellcode

    1. Dim lname As String
    2. ' cmboxtogo.SelectedItem = sdmenu.cmboxlaufwerke.SelectedItem
    3. lname = sdmenu.cmboxlaufwerke.SelectedItem & "Test"
    4. MsgBox(lname)
    5. If Not IO.Directory.Exists(lname) Then
    6. IO.Directory.CreateDirectory(lname)
    7. End If

    Mit der fehlermeldung der Pfad hat ein ungültiges format
    ne in der combox werden durch ein while schleife die verfügbaren laufwerke gerpüft

    VB.NET-Quellcode

    1. Zähler = 0
    2. Dim Bustaben = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    3. While Zähler < 26
    4. Dim Bustabe = Bustaben.Substring(Zähler, 1)
    5. 'Hinzufgen
    6. If IO.Directory.Exists(Bustabe & ":\") Then
    7. cmboxlaufwerke.Items.Add(Bustabe & " :\")
    8. End If
    9. Zähler += 1
    10. End While
    11. If Zähler = 26 Then
    12. cmboxlaufwerke.Visible = True
    13. cmdok.Visible = True
    14. End If


    Und dann kann der User zwischen den freien luafwerken aus suchen.
    Also ich hab es jetzt mal probiert und bei mir funktioniert es.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    3. Dim Path As String = CStr(Me.ComboBox1.SelectedItem)
    4. MessageBox.Show(Path)
    5. System.IO.Directory.CreateDirectory(Path & "Test")
    6. End Sub
    7. End Class