Bonjour,
Voila j'ai un treeview qui déploie toute l'arborescence du disque local C:, mais également certains dossiers cachés comme "$Recycle.bin" ou "System Volume information", "Documents and settings" (je suis en W7).
Or l'apparition de ce treeview est très longue à cause justement de ces fichiers cachés sur lesquels même en admin je n'est pas d'accès.
De plus lorsqu'ils apparaissent dans le treeview et que je clique dessus, cela provoque une erreur.
Y a t il un moyen que le "directoty.info" ne prenne pas en compte ces fameux dossiers cachés.
Je sais pas s'il y a une option spéciale dossiers caché ou si par une condition du genre "si dans le directory.info du C, si tel dossier caché existe alors l'exclure de l'arborescence.."
Pour info voici le début du code concerné: (il n'est pas de moi, source msdn.microsoft)
Je suis débutant en la matière, merci d'avance pour votre aide.
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 Private Sub PopulateTreeView() Dim rootNode As TreeNode Dim info As New DirectoryInfo("C:\") If info.Exists Then rootNode = New TreeNode(info.Name) rootNode.Tag = info GetDirectories(info.GetDirectories(), rootNode) TreeView1.Nodes.Add(rootNode) End If End Sub Private Sub GetDirectories(ByVal subDirs() As DirectoryInfo, ByVal nodeToAddTo As TreeNode) Dim aNode As TreeNode Dim subSubDirs() As DirectoryInfo Dim subDir As DirectoryInfo For Each subDir In subDirs aNode = New TreeNode(subDir.Name, 0, 0) aNode.Tag = subDir aNode.ImageKey = "folder" Try subSubDirs = subDir.GetDirectories() Catch e As UnauthorizedAccessException subSubDirs = Nothing End Try If Not subSubDirs Is Nothing Then If subSubDirs.Length <> 0 Then GetDirectories(subSubDirs, aNode) End If End If nodeToAddTo.Nodes.Add(aNode) Next subDir End Sub Public Sub New() InitializeComponent() PopulateTreeView() End Sub 'New
Partager