snakeissat
Messages postés30Date d'inscriptionjeudi 20 mai 2010StatutMembreDernière intervention 8 juillet 2012
-
21 juin 2012 à 11:10
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024
-
21 juin 2012 à 19:28
Bonjour,
j'essaye avec une fonction de calculer la taille des dossiers, mon problème est que lorsque c'est un dossier ou un fichier avec accès refusé, je ne peux pas calculer la taille, j'ai essayer de changer les accès aux dossier et au fichier avec le FileSecurity et le DirectorySecurity:
foreach (FileInfo fi in folder.GetFiles())
{
FileSecurity Security = File.GetAccessControl(fi.Name);
SecurityIdentifier Everybody = new SecurityIdentifier(WellKnownSidType.WorldSid, null);
Security.AddAccessRule(new FileSystemAccessRule(Everybody, FileSystemRights.FullControl, AccessControlType.Allow));
File.SetAccessControl(fi.Name, Security);
bytes += fi.Length;
}
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 21 juin 2012 à 12:40
Bonjour,
Essayes peut être aussi de gérer l'erreur avec un Try/Catch.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list ---
snakeissat
Messages postés30Date d'inscriptionjeudi 20 mai 2010StatutMembreDernière intervention 8 juillet 2012 21 juin 2012 à 15:58
mon problème est de forcer le calcul et non pas de le gerer avec le bloc try catch parce que ca ne génère aucune erreur, seulement il ne me donne pas la taille du dossier dont j'ai pas le droit d'accès
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 21 juin 2012 à 19:28
Bonjour,
Si tu n'a pas les droits d'accès, c'est qu'il y a une raison.
Si tu es sur Vista ou 7, lances ton programme en tant qu'admin.
De toute façon, si tu n'y a pas accès, forcer les droits dans ton programme n'est clairement pas la solution.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list ---