FindFirstFile 函数导致“驱动器中没有光盘。请将光盘插入驱动器”错误。此错误的原因是 U 盘中没有 sd 卡并且它是空的。我的问题是我必须扫描特定目录的所有驱动器,我无法区分驱动器是否为空。我怎样才能做到这一点?
我正在为 Windows 开发应用程序,并且正在使用 MFC 进行开发。
任何帮助将不胜感激。
法鲁克-
FindFirstFile 函数导致“驱动器中没有光盘。请将光盘插入驱动器”错误。此错误的原因是 U 盘中没有 sd 卡并且它是空的。我的问题是我必须扫描特定目录的所有驱动器,我无法区分驱动器是否为空。我怎样才能做到这一点?
我正在为 Windows 开发应用程序,并且正在使用 MFC 进行开发。
任何帮助将不胜感激。
法鲁克-
我猜了一点,但我怀疑你需要调用SetErrorMode()
传递SEM_FAILCRITICALERRORS
标志来抑制这个对话框的出现。相反FindFirstFile()
,它将返回一个故障代码,您可以继续枚举中的下一个驱动器。
编辑:对于 Windows 7 及更高版本,请考虑SetThreadErrorMode()
改为。这限制了模式的效果。还要记得尽快恢复原来的模式。