返回信息流使用`FindFirstFile` 与 `FindNextFile` 希望能够遍历文件,但是效果不是很好,有些文件无法访问到,如“C:\\Windows\\System32\\Drivers”目录下只访问到了9个文件就结束了。
有没有大佬遇到过此类问题,求指教
这是一条镜像帖。来源:北邮人论坛 / cpp / #100271同步于 2020/8/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
【已解决】【讨论】【问题】windows下C++获取目录下的所有文件
Dumb
2020/8/19镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
====问题解决啦====
问题的关键在于程序是32位还是64位,`System32` 中存放着与64位程序运行相关的库,而`SysWOW64`(Windows On Windows64)则存放着32位程序的相关运行库,在32位程序时,系统会将程序访问的`C:\Windows\System32`目录自动重定位到`SysWOW64`,楼猪编译的是32位程序,程序中访问的是`C:\Windows\System32\drivers`被自动重定位,所以访问到的文件只有9个。
=========
同理,如果使用32位的程序在`C:\Windows\System32`下创建文件,则文件会被新建在`C:\Windows\SysWOW64`目录下
【 在 Dumb 的大作中提到: 】
: [md]
: 使用`FindFirstFile` 与 `FindNextFile` 希望能够遍历文件,但是效果不是很好,有些文件无法访问到,如“C:\\Windows\\System32\\Drivers”目录下只访问到了9个文件就结束了。
:
: ...................