Access to path X is denied

  • VB.NET
  • .NET 4.5

SSL ist deaktiviert! Aktivieren Sie SSL für diese Sitzung, um eine sichere Verbindung herzustellen.

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von VaporiZed.

    Access to path X is denied

    Guten Abend Community,
    ich habe es ja nun endlich mit meinem Backgroundworker hinbekommen. Nun möchte ich das Problem mit dem Zugriffsberechtigungen.
    Das ist mein Code:

    VB.NET-Quellcode

    1. Try
    2. Dim di As New DirectoryInfo(verzeichnis)
    3. Dim fiArr As FileInfo() = di.GetFiles("*", SearchOption.AllDirectories)
    4. Dim fri As FileInfo
    5. Dim MySize As Long
    6. Dim byti As Long = 1048576
    7. For Each fri In fiArr
    8. suche = suche + 1
    9. MySize = FileLen(fri.DirectoryName & "\" & fri.Name)
    10. If MySize >= NUD.Value * byti Then
    11. Dim grosse As Long = Math.Round(MySize / 1048576, 0)
    12. listboxx1.Add(fri.DirectoryName & "\" & fri.Name & " (" & grosse & " MB)")
    13. End If
    14. Next fri
    15. Catch ex As Exception
    16. errorlogg.Add(ex.Message)
    17. End Try


    Leider wird bei größeren Verzeichnissen, wie z. B. Dokumente, meist die Fehlermeldung ausgegeben, dass der Zugriff auf das Verzeichnis verwehrt wurde. Dies bricht den gesamten Prozess ab.

    Was kann ich tun, dass der Backgroundworker weitermacht, selbst, wenn es eine Fehlermeldung wie diese gibt?

    Danke!
    Die beste maschinelle Übersetzung der Welt - DeepL Übersetzer
    Alle Zitate, die ich seit dem 1.9.2017 übersetzt habe, wurden vollautomatisch mit DeepL übersetzt.



    xChRoNiKx schrieb:

    Die Meldung sauber per Try-Catch abfangen.
    Gab es erst kürzlich ein Thema im Forum zu.


    Danke, werde ich mal versuchen!

    Bluespide schrieb:

    Noch einen Try Catch in die For-Schleife rein?
    Und schreib bitte "MiB" als Einheit oder teil durch 1000000, nicht 1048576 sonst stimmt "MB" nicht.


    Danke, werde ich ändern!
    Die beste maschinelle Übersetzung der Welt - DeepL Übersetzer
    Alle Zitate, die ich seit dem 1.9.2017 übersetzt habe, wurden vollautomatisch mit DeepL übersetzt.



    Bei dem von xChRoNiKx wahrscheinlich angesprochenen Thread ging es erstmal um Tiefe in der Verzeichnissuche, ab Seite 2 auch um Exceptions beim Laufwerkdurchforsten.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von VaporiZed, mal wieder aus Grammatikgründen.

    ― Eine häufig von mir verwendete Abkürzung: CEs = control elements (Labels, Buttons, DGVs, ...)
    ― If Not GrammarIsOk() Then AssumeThatCodeIsOk = False
    ― »Oh, großes Spaghetticodemonster. Bitte schicke mir Durchblick! Oder zumindest eine Gabel. Oder – wenn es kein Besteck mehr gibt – zumindest Glasnudeln.«