Ny Bitmapbillede (2) har jeg gjort skrivebeskyttet.
System.UnauthorizedAccessException: Access to the path 'Ny Bitmapbillede (2).bmp ' is denied. at System.IO.Directory.DeleteHelper(String fullPath, String userPath, Boolean recursive) at System.IO.Directory.Delete(String fullPath, String userPath, Boolean recur sive) at System.IO.Directory.Delete(String path, Boolean recursive) at ClearUserDirectory.Program.Main(String[] args) in C:\Documents and Setting s\Kim Bang\Dokumenter\Visual Studio 2005\Projects\ClearUserDirectory\ClearUserDi rectory\Program.cs:line 27 -- MESSAGE -- Access to the path 'Ny Bitmapbillede (2).bmp' is denied.
Ja, den besked stemmer jo pænt overens med at filen er skrivebeskyttet.
Imidlertid fungere den kode jeg har postet her i min egne test. Der må altså næsten være noget andet på færde. Kan det tænkes at den pågældende fil er låst fordi at den er i brug af et andet program?
Jo, det kan jeg godt se, men hvordan gør jeg så at jeg sletter filer i de dir's den finder? Den kører jo dir's igennem først, og jeg kan ikke sætte variabler på der, kan jeg?
class Program { static void Main(string[] args) { Console.WriteLine("Vil du rense de markerede biblioteker? (J/N) "); string resp = Console.ReadKey().KeyChar.ToString(); if (resp.ToLower().Equals("j")) { try { Console.WriteLine(); Console.WriteLine("Rensning påbegyndt"); int counter = 0; foreach (string strDirectory in args) { SletBibilotek(strDirectory); } Console.WriteLine(); Console.WriteLine("#" + counter.ToString() + " bibliotek(er) blev renset"); } catch (Exception exep) { Console.WriteLine("!!!En fejl opstod!!!"); Console.WriteLine("--------------------"); Console.WriteLine(exep.ToString()); Console.WriteLine("-- MESSAGE --"); Console.WriteLine(exep.Message); } } else { Console.WriteLine(); Console.WriteLine("#Handlingen blev afbrudt"); } Console.ReadKey(); }
private static void SletBibilotek(string strDirectory) { // Sletter alle filerne i dette bibliotek. string[] arrayFiles = Directory.GetFiles(strDirectory); foreach (string f in arrayFiles) { File.SetAttributes(f, FileAttributes.Normal); File.Delete(f); }
// Fortsætter ud i underbibliotekerne. string[] arrayDirectories = Directory.GetDirectories(strDirectory); foreach (string d in arrayDirectories) { SletBibilotek(d); }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.