gpt4 book ai didi

c# - DirectoryInfo.GetFiles() 不返回所有文件

转载 作者:可可西里 更新时间:2023-11-01 09:27:49 35 4
gpt4 key购买 nike

我只是用我自己的文件夹浏览器做一些试验。我注意到当我查看 Windows 7 中的 System32 文件夹时,我得到了一些奇怪的结果。这是代码:

DataTable dt=new DataTable();
string 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;

运行时,文件列表不完整。文件总数比windows资源管理器少400多个。

可以对名为“accelerometerdll.dll”的文件进行简单检查以尝试解决此问题。该文件绝对位于 System32 文件夹中。我可以在资源管理器中看到它,当我执行 DIR 时,我可以在命令窗口中看到它。但它从未出现在我的数据表中。永远不会满足条件。它就像它根本看不见。我试过以管理员身份运行它,结果相同。

更令人不安的是它确实显示了一个名为“12520437.cpx”的文件,而我在资源管理器或命令窗口中都看不到它。它似乎在 SysWOW64 文件夹中而不是 System32 文件夹中???

我在这里的主要目标是显示与资源管理器在我打开任何文件夹时显示的文件完全相同的文件。

有什么想法吗?

最佳答案

根据知识渊博的响应,有必要关闭 prefer 32 位编译器指令。

此处提供更多信息:

File System Redirector

关于c# - DirectoryInfo.GetFiles() 不返回所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44072374/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com