Mit VB Verzeichnis löschen

  • VB.NET

Es gibt 30 Antworten in diesem Thema. Der letzte Beitrag () ist von MB-Tech.

    Mit VB Verzeichnis löschen

    Hallo Leute

    ich habe da ein Problem:

    Ich möchte gerne ein Verzeichnis löschen per VB der Pfade zum Verzeichniss ist aber in einer Listbox eingetragen.

    ich habe es mit

    VB.NET-Quellcode

    1. File.Delete(ListBox1.Text)
    und

    VB.NET-Quellcode

    1. kill (ListBox1.Text)


    vlt habt ihr noch eine Idee

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

    tzer schrieb:

    Hallo Leute

    ich habe da ein Problem:

    Ich möchte gerne ein Verzeichnis löschen per VB der Pfade zum Verzeichniss ist aber in einer Listbox eingetragen.

    ich habe es mit

    VB.NET-Quellcode

    1. File.Delete(ListBox1.Text)
    und

    VB.NET-Quellcode

    1. kill


    vlt habt ihr noch eine Idee

    Hey, probier es mit:

    VB.NET-Quellcode

    1. Imports System.IO
    2. IO.File.Delete(ListBox1.SelectedItem)

    Samus Aran schrieb:

    Für beides musst du System.IO importieren.
    Also man muss das nicht machen. Aber es ist von Vorteil wenn du den Befehl öfters verwendest.

    Hier zur Erklärung:


    VB.NET-Quellcode

    1. 'Ohne Import
    2. System.IO.Directory.Delete("BlaBla")
    3. 'bzw.
    4. IO.Directory.Delete("BlaBla") ' System ist ja schon standartmäßg drin.


    VB.NET-Quellcode

    1. 'Mit Import
    2. Imports System.IO
    3. Directory.Delete("BlaBla")
    Danke aber bei mir kommt diese Fehlermeldung

    A first chance exception of type 'System.ArgumentNullException' occurred in mscorlib.dll

    und das bei beiden

    'Ohne Import
    System.IO.Directory.Delete("BlaBla")
    'bzw.
    IO.Directory.Delete("BlaBla")
    Du hast doch da nicht wirklich blabla stehen oder ?


    //edit
    Dann wird wohl SelectedItem Nothing sein...
    Das ist meine Signatur und sie wird wunderbar sein!

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

    Der Pfad muss ja auch komplett angegeben sein.

    Ansonsten geht das ja nicht oder?

    Kombrinki schrieb:

    ok das ist merkwürdig
    sind in dem verzeichnis datein die grade ausgeführt werden oder datein auf die das programm zugreift?

    welche verzeichnisse werden in der Listbox denn angezeigt?

    Also es ist jetzt zum Testen ein Neuer Odner mit 2 Dateien drine davon wird keine Datei benutzt
    der Pfade der in der Listbox drin steht ist:

    D:\Work\Datein\Desktop\Neuer Odner
    Das Problem wird sein, das Listbox1.SelectedItem.ToString einen leeren String bzw Nothing enthält..
    lass dir mal eine Zeile davor Listbox1.SelectedItem.ToString per Debug.Print ausgeben.

    Ich vermute du hast kein Item ausgewählt..
    Das ist meine Signatur und sie wird wunderbar sein!

    Mono schrieb:

    Das Problem wird sein, das Listbox1.SelectedItem.ToString einen leeren String bzw Nothing enthält..
    lass dir mal eine Zeile davor Listbox1.SelectedItem.ToString per Debug.Print ausgeben.

    Ich vermute du hast kein Item ausgewählt..

    System.IO.IOException was unhandled
    Message=Das Verzeichnis ist nicht leer.

    Source=mscorlib
    StackTrace:
    bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    bei System.IO.Directory.DeleteHelper(String fullPath, String userPath, Boolean recursive)
    bei System.IO.Directory.Delete(String fullPath, String userPath, Boolean recursive)
    bei System.IO.Directory.Delete(String path)
    bei tmpfile_scanner.Form1.CacheLöschenToolStripMenuItem_Click(Object sender, EventArgs e) in D:\Programme\Programme\Temp File Scanner\tmp-mp3-scanner\tmp-mp3-scanner\tmpfile-scanner1\Form1.vb:Zeile 318.
    bei System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
    bei System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
    bei System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
    bei System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
    bei System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
    bei System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
    bei System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
    bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
    bei System.Windows.Forms.Control.WndProc(Message& m)
    bei System.Windows.Forms.ScrollableControl.WndProc(Message& m)
    bei System.Windows.Forms.ToolStrip.WndProc(Message& m)
    bei System.Windows.Forms.MenuStrip.WndProc(Message& m)
    bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
    bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    bei System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
    bei System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
    bei System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
    bei System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
    bei System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
    bei System.Windows.Forms.Application.Run(ApplicationContext context)
    bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
    bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
    bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
    bei tmpfile_scanner.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:Zeile 81.
    bei System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
    bei System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
    bei System.Runtime.Hosting.ManifestRunner.Run(Boolean checkAptModel)
    bei System.Runtime.Hosting.ManifestRunner.ExecuteAsAssembly()
    bei System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData)
    bei System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext)
    bei System.Activator.CreateInstance(ActivationContext activationContext)
    bei Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone()
    bei System.Threading.ThreadHelper.ThreadStart_Context(Object state)
    bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
    bei System.Threading.ThreadHelper.ThreadStart()
    InnerException:

    Das sagt er mir aber der Odner ist nicht leer ^^
    Klick in meiner Sig auf "Guckst du", um zu beispielen für guten Stil zu gelangen.

    VB.NET-Quellcode

    1. Try
    2. Catch ex As IOException
    3. If Not ex.Message = "Das Verzeichnis ist nicht leer." Then Throw ex
    4. End Try


    Das fängt nur die eine ab, denn sonst wundert man sich ganz schnell, warum nichts mehr geht.