Bonjour à tous/toutes,
meilleurs voeux pour cette nouvelle année!
J'aimerai réaliser un petit programme permettant de récupérer la taille d'un dossier et de son contenu (ou d'un partition d'ailleurs). Tout fonctionne pour le mieux grâce à cette fonction qui me renvois la taille que je souhaite :
Malheureusement lorsque je "scan" une partition contenant des dossiers profils de certains utilisateurs du domaine, j'ai un "access denied" puisque le user en question est le seul à avoir l'accés sur son dossier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Public Function GetFolderSize(ByVal dirPath As String, ByVal includeSubFolders As Boolean) As String Try Dim Size As Long = 0 Dim diBase As New DirectoryInfo(dirPath) Dim Files() As FileInfo If includeSubFolders Then Files = diBase.GetFiles(("*"), SearchOption.AllDirectories) Else Files = diBase.GetFiles(("*"), SearchOption.TopDirectoryOnly) End If Dim ie As IEnumerator = Files.GetEnumerator While ie.MoveNext Size += DirectCast(ie.Current, FileInfo).Length End While Return Size Catch ex As Exception GetFolderSize = ("error: " & ex.Message) End Try End Function
En cherchant à droite et à gauche j'ai pu voir qu'il est possible de se donner d'avantage de droits afin de faire des actions qui normalement ne sont pas permises.
Dans mon cas il semblerait que le privilege "SeBackupPrivilege" me permettrait de lire les informations que je souhaite des dossiers/fichiers non accessibles.
Cette page explique la procédure en C++ :
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
Voila un certains temps que je suis sur ce problème sans trouver la solution exacte puisque je ne comprends pas vraiment le principe du Token et sur quoi il s'applique.
Une bonne âme pourrait elle éclairer ma lanterne et m'aider pour la suite?
En vous remerciant par avance!!
Cz
Partager