FindFirstFile函数导致“驱动器中没有光盘。请将光盘插入驱动器”错误。导致此错误的原因是USB记忆棒中没有SD卡,而且它是空的。我的问题是我必须扫描特定目录的所有驱动器,我无法区分驱动器是否为空。我怎样才能做到这一点?
我正在开发Windows应用程序,我正在使用MFC进行开发。
任何帮助都将受到高度赞赏。
法鲁克 -
答案 0 :(得分:10)
我猜一点,但我怀疑你需要调用SetErrorMode()
传递SEM_FAILCRITICALERRORS
标志来禁止显示此对话框。相反,FindFirstFile()
将返回失败代码,您可以转到枚举中的下一个驱动器。
编辑:对于Windows 7及更高版本,请考虑使用SetThreadErrorMode()
。这限制了模式的效果。另请记住尽快恢复原始模式。