Frage

Warum muß ich eine „System.Security.Permission.FileIOPermission“ Fehlermeldung erhalten? Unten ist im Grunde mein ganzes Programm. Es ist extrem einfach. Alles was es braucht zu tun ist, eine Kopie eines Ordners zu erstellen. Es funktioniert auf meinem PC und und einige meiner Kollegen PCs, aber für einige ist es gibt den Fehler oben.

Irgendwelche Ideen?

        public static void CopyAll(DirectoryInfo source, DirectoryInfo target)
        {
            // Check if the target directory exists, if not, create it.
            if (Directory.Exists(target.FullName) == false)
            {
                Directory.CreateDirectory(target.FullName);
            }

            // Copy each file into it’s new directory.
            foreach (FileInfo fi in source.GetFiles())
            {
                Console.WriteLine(@"Copying {0}\{1}", target.FullName, fi.Name);
                fi.CopyTo(Path.Combine(target.ToString(), fi.Name), true);
            }

            // Copy each subdirectory using recursion.
            foreach (DirectoryInfo diSourceSubDir in source.GetDirectories())
            {
                DirectoryInfo nextTargetSubDir =
                target.CreateSubdirectory(diSourceSubDir.Name);
                CopyAll(diSourceSubDir, nextTargetSubDir);
            }
        }
War es hilfreich?

Lösung 3

Installieren von .net 3.5 behebt das Problem (der Standard FileIOPermissions auf der lokalen Maschine ändert die Erlaubnis zu erteilen, um Anwendungen über das Netzwerk ausgeführt werden)

Andere Tipps

Auf den Systemen, bei denen dies der Benutzer geschieht angemeldet möglicherweise nicht gelesen haben oder Schreibrechte (wahrscheinlich lesen, denn wenn Sie Zielverzeichnis erstellen, können Sie es schreiben kann). Mehr Informationen über FileIOPermission gefunden werden hier bei Msdn .

Das Problem wird insufficent Rechte sein. Das Betriebssystem verweigert den Zugriff auf ein Verzeichnis, da der Benutzer, der das Programm läuft nicht Verzeichnisse erstellen erlaubt oder Kopieren von Dateien in diesem speziellen Verzeichnis.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top