none
Wie festzustellen, ob eine Datei in UNC existiert ? RRS feed

  • Frage

  • Wie kann ich in eine UNC prüfen, ob Datei existiert ?

    "\\server\freigabe\temp\test.txt"

    MFG

    Ati

    Dienstag, 23. Oktober 2012 10:11

Alle Antworten

  • FileInfo fi = new FileInfo(@"\\server\share\test.txt");
    bool exists = fi.Exists;
    

    Grüße
    Dienstag, 23. Oktober 2012 10:23
  • Hi,

    die Abfrage gibt aber auch False zurück, wenn der ausführende Account keine Berechtigung auf die Datei/den Ordner/die Freigabe hat..


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Dienstag, 23. Oktober 2012 10:36
    Moderator
  • Stimmt man könnte auch testen ob man Sie öffnen kann

    bzw. die User Principials auslesen.

    Dienstag, 23. Oktober 2012 11:19
  • Hallo,

    mit dem o.g. Lösung habe ich versucht leider ohne Erfolg.

    Ich habe normal Zugriff auf den Ordner und Files der Serverfreigabe.

    MFG

    Ati

    Dienstag, 23. Oktober 2012 12:36
  • Hallo Ati,

    was heißt "ohne Erfolg"?

    Welche Art von Anwendung führt den genannten Code aus? WinForms? Windowsdienst? ASP.NET? ...?


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Dienstag, 23. Oktober 2012 13:14
    Moderator
  • Hallo,

    WinForms.

    MFG

    Ati

    Dienstag, 23. Oktober 2012 14:49
  • Hi,

    der Code funktioniert einwandfrei. Der Fehler dürfte daher woanders liegen. Evtl. hast Du eine falsche Pfadangabe oder halt eben doch keine Berechtigung.

    Ist die Freigabe evtl. keine normale Freigabe, sondern bspw. über ein Tool nur so dargestellt? (gibt es bspw. für FTP oder WebDAV Ordner, die als Freigabe angezeigt werden, allerdings dann auch nur im Windows Explorer)

    Alternativ kann man auch direkt ohne FileInfo Instanz abfragen:

    bool fileExists;
         fileExists = System.IO.File.Exists( @"\\server\freigabe\datei.txt" );
         MessageBox.Show( "Datei vorhanden? " + fileExists.ToString() );
    


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community


    Dienstag, 23. Oktober 2012 15:30
    Moderator
  • Hallo Stefan,

    so lautet meine Abfrage:

    String arg = @"\\server\freigabe\temp\test.txt";

    if (File.Exists(arg)) MessageBox.Show( "Datei vorhanden ");

    else MessageBox.Show("Datei nicht vorhanden? ");

    er spring immer zu else zweig mit arg. 

    Über Dateien-Explorer gemappte Laufwerkbuchstabe k:(\\server\freigabe\temp\test.txt) vorhanden und kein Zugriffsbeschränkung und über diesen k:\ kein Problem nur über o.g. arg nicht

    MFG


    • Bearbeitet ati.sah Donnerstag, 25. Oktober 2012 07:14
    Mittwoch, 24. Oktober 2012 09:23