DirectoryInfo.GetFiles () Ne pas retourner tous les fichiers

Je suis en train d’expérimenter un peu avec mon propre navigateur de dossiers. Je remarque que lorsque je regarde le dossier System32 dans Windows 7, je reçois des résultats étranges. Voici le code:

DataTable dt=new DataTable(); ssortingng Folder="C:\\Windows\\System32"; DirectoryInfo DI = new DirectoryInfo(Folder); foreach (FileInfo FI in DI.GetFiles()) { DataRow Row = dt.NewRow(); if(FI.Name== "accelerometerdll.DLL") { } Row["Name"] = FI.Name; Row["Created"] = FI.CreationTime; Row["Size"] = FI.Length; dt.Rows.Add(Row); } dataGridView1.DataSource = dt; 

Lorsqu’elle est exécutée, la liste des fichiers est incomplète. Le nombre total de fichiers est désactivé par plus de 400 fichiers par rapport à l’explorateur Windows.

Il existe une vérification simple du fichier nommé “accelerometerdll.dll” pour tenter de résoudre ce problème. Ce fichier est absolument situé dans le dossier System32. Je peux le voir dans Explorer et je peux le voir dans la fenêtre de commande lorsque je fais un DIR . Pourtant, cela ne se voit jamais dans mon datatable. La condition n’est jamais remplie. C’est comme si elle était simplement invisible. J’ai essayé d’exécuter ceci en tant qu’administrateur avec les mêmes résultats.

Plus déconcertant encore, il montre un fichier appelé “12520437.cpx” et je ne le vois pas dans explorer ni dans la fenêtre de commande. Il semble être dans le dossier SysWOW64 pas le dossier System32 ???

Mon objective principal ici est de montrer EXACTEMENT les mêmes fichiers que l’explorateur montre lorsque j’ouvre un dossier.

Des idées?

Il était nécessaire de désactiver la directive préférentielle du compilateur 32 bits basée sur des réponses bien informées.

Plus d’informations sont disponibles ici:

Redirecteur de système de fichiers