FindFirstFile导致"驱动器中没有光盘"错误

Far*_*man 3 winapi mfc visual-studio visual-c++ findfirst

FindFirstFile函数导致"驱动器中没有光盘.请将光盘插入驱动器"错误.导致此错误的原因是USB记忆棒中没有SD卡,而且它是空的.我的问题是我必须扫描特定目录的所有驱动器,我无法区分驱动器是否为空.我怎样才能做到这一点?

我正在开发Windows应用程序,我正在使用MFC进行开发.

任何帮助将受到高度赞赏.

Farooq-

Dav*_*nan 10

我猜一点,但我怀疑你需要调用SetErrorMode()传递SEM_FAILCRITICALERRORS旗帜来抑制这个对话框出现.相反,FindFirstFile()它将返回失败代码,您可以转到枚举中的下一个驱动器.

编辑:对于Windows 7及更高版本,请考虑SetThreadErrorMode()使用.这限制了模式的效果.还要记得尽快恢复原始模式.