Rechte bei rekursiver Dateisuche

max26

Grünschnabel
Hallo,
kann mir jemand helfen?
Ich bekomme wenn ich C:\ durchsuche eine Meldung, dass ich nicht die nötigen Rechte besitze!! C:\ATI funktioniert


OS: Vista
Rechre: Admin

Code:
namespace suche
{

    public partial class Form1 : Form
    {
        
        public int c = 0;

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            StreamWriter file = new StreamWriter(@"C:\ATI\a.txt");
            suche(textBox1.Text, file);
            file.Close();
        }

        public void suche(string path, StreamWriter stream)
        {
            if (!Directory.Exists(path.ToString()))
                return;

            string[] files = Directory.GetFiles(path);
            for (int i = 0; i < files.Length; i++)
            {
                stream.WriteLine(c.ToString() + "  " + files[i]);
                c++;
            }

            string[] directories = Directory.GetDirectories(path);
            for (int i = 0; i < directories.Length; i++)
            {
                suche(directories[i], stream);
            }
        }


    }
}
 
Meinst du den StreamWriter?
Wenn ja, hast du einfach keine Berechtigung in dieses Verzeichnis zu schreiben.
Was so auch richtig wäre da hat kein Programm etwas zu suchen um Einstellungen für ein Programm zu speichern.

Möchten du wirklich dir eine Datei anlegen nutze am besten "Gemeinsamen Dateien" oder wie das unter Vista jetzt nu heißt.

Nachtrag:
Seh grad Admin, dann poste am besten mal die richtige Fehlermeldung nochmal.
 
Klingt so als würdest du beim rekursiven Durchsuchen auf das Verzeichnis "C:\System Volume Information" zugreifen - da hat unter WinXP auch kein Admin Rechte für.
Eventuell passiert Ähnliches auch wenn du auf "C:\RECYCLER" zugreifst, habe das jetzt nicht getestet.
Wie die Verzeichnisse bei Vista heißen weiß ich leider nicht, aber da gibt es bestimmt ähnliche.
 
Zuletzt bearbeitet:
Zurück